TextX - это парсер PEG, основанный на арпеджио, написанном на Python.
1 ответ

Методы создания подсветки синтаксиса в textX?

Поскольку я не могу найти какие-либо рекомендации по подсветке синтаксиса, я решил подготовить простой предварительный просмотр записи в виде обычного текста и затем подсветки всего в html, что достаточно для моей области на данный момент. Переопред…
16 янв '19 в 11:44
1 ответ

Читать буквально из метамодели

Я хочу спросить, возможно ли прочитать - из моего кода Python - литерал, который я определил в метамодели. Это может быть лучше всего объяснено на примере. Допустим, это моя метамодель (вдохновленная примером Entitiy): EntityModel: entities+=Entity …
16 окт '18 в 07:32
2 ответа

Преодоление бесконечной левой рекурсии в синтаксическом анализаторе TextX

Я пишу парсер для существующего языка, используя библиотеку Python TextX (на основе парсера Arpeggio PEG) Но когда я пытаюсь использовать его для анализа файла, я получаю исключение: RecursionError: maximum recursion depth exceeded while calling a P…
15 окт '18 в 07:15
0 ответов

Повторное создание файла модели с помощью textx

Я новичок в DSL и не уверен, возможно ли выполнить задачи, которые я хочу выполнить с textx: У меня уже есть текст описания языка (например: hello.tx) Загрузите исходный файл модели для этого языка (например: example.hello) Редактировать текущую заг…
02 мар '19 в 18:30
1 ответ

Разбор dhcpd.conf с textX

Я использую https://github.com/igordejanovic/textX для анализа dhcpd.conf файл (нет, https://pypi.org/project/iscconf/ не работает для меня, он падает на моем dhcpd.conf файл), специально распаковывать хосты с фиксированными адресами. Записи похожи …
19 ноя '18 в 17:33
2 ответа

ModuleNotFoundError при запуске функциональных тестов Python, несмотря на то, что команда textX работает

Я следовал инструкциям для этого открытого источника. На шаге 3 я должен бежать py.test tests/functional/ Когда я делаю это, я получаю ModuleNotFoundError: No module named 'textx' Тем не менее, когда я печатаю textxЭто определенно работает как коман…
24 дек '18 в 12:53
1 ответ

Можно ли добавлять комментарии к файлам.tx для textx? Если так, то как?

Работал на примере " Привет, мир" в документации. Затем я понял, что хочу добавить комментарии, чтобы помочь мне лучше понять синтаксис textX. Нет никаких признаков того, что это возможно в первую очередь. Гугл не помог. Пожалуйста, порекомендуйте.
21 дек '18 в 01:56
1 ответ

Как адаптировать генератор Java POJO для модели Django с помощью пользовательских методов?

Я закончил с этим уроком, который показывает, как использовать textX для написания Java POJO. Я думаю об адаптации этого, чтобы написать классы модели Django. Проблема в том, когда мне нужно добавить пользовательские методы модели в класс модели Dja…
28 дек '18 в 08:01
0 ответов

Как семантически проверить модели textX?

У меня есть набор довольно сложных метамоделей tex tX, которые я использую для анализа файлов и создания моделей. Это включает в себя использование различных поставщиков пользовательских областей. Я хотел бы проверить созданную модель, чтобы увидеть…
23 май '19 в 11:07
0 ответов

textX: Как генерировать имена объектов с помощью ObjectProcessors?

У меня есть простой пример модели, где я хотел бы генерировать имена для объектов Position правило, которому не дали имя с as <NAME>, Это необходимо для того, чтобы я мог найти их позже с помощью встроенного поставщика области FQN. Моя идея со…
29 май '19 в 13:41
1 ответ

Как написать правило грамматики textx для определения стандартных типов данных без их изменения?

Я хочу написать правило грамматики textx, которое может состоять из другого определенного правила или любого типа стандартного типа данных (Int, Float, String и т. Д.). Это для простого текстового DSL, который должен иметь возможность писать (и пере…
26 апр '19 в 07:32
0 ответов

Как разобрать выражение с круглыми скобками?

Я хотел бы проанализировать выражение с круглыми скобками в python, используя textx. Например, следующий DSL: CREATE boby = sacha - ( boby & tralaa) ; CREATE boby = sacha & boby - ( david & lucas ) Это грамматика, которую я попробовал: M…
11 май '19 в 19:35
1 ответ

Взгляд внутрь или предложение не выполнено в textx

Следующее вызывает исключение для меня (в строке 9), жалуясь, что Expected '.' at position (5, 15) => 'k foo bar *end '.: mm = metamodel_from_str(''' File: Line*; Line: Block | Sentence; Sentence: 'foo' 'bar' ( '.' | &'end' ); Block: 'block' …
19 май '19 в 09:41
1 ответ

Можно ли использовать ссылку на правило ссылки в режиме ожидания?

Я пытаюсь использовать textx для разбора языка, похожего на SQL. Я хотел бы использовать ссылки на правила ссылок, чтобы ссылаться на псевдонимы до их объявления. Я получаю сообщение об ошибке "Неизвестный объект"Foo"класса"Bar"" при попытке сделать…
07 июн '19 в 06:02
1 ответ

Вложенные выражения вызывают переполнение стека

Я столкнулся с проблемой, которую вы, ребята, возможно, поможете мне решить. Я пытаюсь разобрать грамматику, которая содержит это: Expr: BinOp | Name | Constant ; Name: id=ID ; Constant: value=INT ; BinOp: left=expr op=operator right=expr ; Operator…
10 окт '19 в 18:26
1 ответ

Как правильно смешивать textx skipws/non-skipws?

Я хочу использовать textx для анализа "foo bar." иначе "foo bar ." (завязывая '.' до последнего слова, если нет места, но все равно разбирает '.' раздельно). Я бы подумал, что это сделает следующее: from textx.metamodel import metamodel_from_str mm …
15 сен '19 в 16:24
1 ответ

Разобранная модель TextX не имеет атрибута command

Я проанализировал текст с помощью TextX. Когда я хочу обработать команды с помощьюfor цикл, я получаю ЭТО: grammar.tx Traceback (most recent call last): File "C:/Users/user/SomerandomIDE/program/program/parser.py", line 100, in <module> main()…
22 дек '19 в 09:50
1 ответ

MemoryError при загрузке модели

Когда я пытаюсь загрузить модель (ввод, а не метамодель), она возвращает MemoryError примерно через 30 секунд после выполнения. Ожидается: Список дерева: [{'type':'func', 'callee':'print', 'args':[['Hello']]}]Актуально: MemoryError Выход Traceback (…
19 дек '19 в 07:57
1 ответ

TextX получает родительские типы объектов

Предположим, что в нашей грамматике есть два таких правила: Value: AttributeReference | PrimitiveValue; PrimitiveValue: BoolValue | StringValue | IntValue; Я хочу реализовать генератор кода для этого языка. По сути, для каждого правила я определил ф…
27 окт '20 в 20:30
1 ответ

Как ограничить повторы в грамматике textx?

Я пытаюсь создать грамматику в textx. Синтаксис должен выглядеть так: name_a name_a, name_b name_a, name_b: name_c, * name_a, name_b: name_c, *, name_d *, name_d * Где звездочка (*) означает "все". Я хочу, чтобы это не повторялось. Текущая грамматик…
26 окт '20 в 17:54