Описание тега tree-grammar

1 ответ

Копировать узлы деревьев, используя грамматики дерева ANTLR

Мне нужно руководство по решению проблемы, с которой я столкнулся, используя древовидную грамматику. По сути, я хочу иметь возможность заменять / копировать операторы, которые можно найти в дереве. Это, вероятно, лучше всего объяснить на примере. Во…
08 май '13 в 05:27
1 ответ

Систематический способ создания грамматики дерева ANTLR?

У меня есть немного большой файл грамматики синтаксического анализатора ANTLR и я хочу создать для него древовидную грамматику. Но, насколько я знаю, эта работа по созданию древовидной грамматики не может быть выполнена автоматически, т.е. я должен …
22 авг '11 в 07:19
1 ответ

ANTLR 3.x - Как отформатировать правила перезаписи

Я сталкиваюсь с проблемой правильного форматирования правил перезаписи, когда в исходном правиле возникают определенные условия. Как правильно переписать это: unaryExpression: op=('!' | '-') t=term -> ^(UNARY_EXPR $op $t) Мне кажется, Antlr не нр…
27 фев '10 в 03:15
1 ответ

ANTLR грамматика синтаксического анализа -> грамматика деревьев

В нашем последнем задании для нашего класса теории компилятора мы создали компилятор для небольшого подмножества Java (не MiniJava). Наш профессор дал нам возможность использовать любые инструменты, которые мы пожелаем, и после долгих раздумий я ост…
14 апр '12 в 11:03
1 ответ

Узел из строки 0:0 несоответствующий узел дерева: UNIT ожидает UNIT

Что означает эта ошибка? Обратите внимание, что он ожидал узел UNIT и получил то, что ожидал... Phase_2.g: node from line 0:0 mismatched tree node: UNIT expecting UNIT
22 авг '12 в 16:22
1 ответ

Создайте объект POJO из этого правила производства.

У меня есть правила этого формата: Condition -> Condition OPERATOR Condition | Condition Condition -> attribute OPERATOR value OPERATOR -> EQUALS | STARTS WITH | ENDS WITH | AND | OR | NOT EQUALS | CONTAINS Мне нужно создать JAVA POJO (сетт…
15 янв '14 в 22:28
1 ответ

Странное "NoViableAltException" в грамматике дерева с мнимым токеном

Я не могу понять исключение "NoViableAltException" при компиляции моей древовидной грамматики. Вот небольшой кусочек моей грамматики с правилом, которое доставляет мне проблемы: keyword_controls_sub : expression (MB_COMA expression)* -> ^(MATCH_S…
18 ноя '16 в 12:40
0 ответов

ANTLR, отсутствие метода в C# target

Я сгенерировал код C# из древовидной грамматики, используя ANTLR, и я не могу найти метод downup(). Является ли последовательность звонков: topdown(); bottomup(); эквивалентно методу downup ()? Почему метод существует в Java, но не в C#? И почему он…
15 авг '10 в 11:20
1 ответ

ANTLR AST древовидная грамматика + списки

Я много читал, пытаясь найти способ чистого использования списков в древовидной грамматике ANTLR. Вот что я попробовал и их результаты (я очень надеюсь, что мне не хватает чего-то тривиального)... Использование += Синтаксис program returns [someInte…
03 апр '11 в 03:34
1 ответ

Древовидная грамматика АНТЛР в графическом виде AST

В настоящее время я собираю компилятор Javascript в ANTLR и JAVA. Я использую древовидную грамматику ANTLR для генерации AST. (Все еще сомневаюсь, что это умнее, чем гетерогенный подход с заданным вручную классом Abstract для генерации узлов, но это…
1 ответ

Следующие наборы правил являются взаимно леворекурсивными TREE GRAMMAR

У меня есть полная грамматика синтаксического анализатора, чем генерирует AST, который я могу сказать, правильно, используя правила переписывания и операторы дерева. На данный момент я застрял на этапе создания грамматики дерева. У меня есть эта оши…
4 ответа

Как разобрать Markdown в PHP?

Во-первых, я знаю, что уже есть анализатор Markdown для PHP. Я также посмотрел на этот вопрос, но он не отвечает на мой вопрос. Очевидно, что даже если в названии упоминается PHP, если он не зависит от языка, потому что я хотел бы знать, какой шаг я…
1 ответ

ANTLR - связывание узлов AST

Я хочу знать, как я могу определить в файле грамматики, что у узла AST есть "два родителя". Например, если узел "D" первого дерева также является дочерним по отношению к узлу "A", какой синтаксис я должен использовать, чтобы узел "D" не повторялся (…
0 ответов

Как избежать использования левой / правой скобок в разделах заголовка ANTLR3?

У меня есть древовидная грамматика ANTLR3 с C в качестве целевого языка. Эта древовидная грамматика фактически генерирует объекты C++ и, следовательно, должна включать заголовок (и) для этих классов. Я использую @header раздел для этого. Однако на в…
08 сен '12 в 21:11
1 ответ

Анализ зависимостей

Мне особенно нравится функция преобразования, предлагаемая agfl в их EP4IR http://www.agfl.cs.ru.nl/EP4IR/english.html Страница загрузки находится здесь: http://www.agfl.cs.ru.nl/download.html Есть ли способ, которым я могу использовать это в програ…
10 мар '10 в 22:56
1 ответ

Регулярные выражения - древовидная грамматика Antlr Java

Я пытаюсь написать программу на ANTLR (Java), касающуюся упрощения регулярных выражений. Я уже написал некоторый код (содержание файла грамматики ниже) grammar Regexp_v7; options{ language = Java; output = AST; ASTLabelType = CommonTree; backtrack =…
27 ноя '12 в 22:31
2 ответа

ANTLR - Написание древовидной грамматики для AST

У меня есть AST, выведенный для некоторого кода Lua моим файлом грамматики, который в настоящее время выполняет синтаксический анализ и лексирование для меня. Я хочу добавить к этому древовидную грамматику, но так как я использую C#, я не уверен, ка…
11 фев '10 в 03:36
1 ответ

Rascal: TrafoFields Синтаксическая ошибка: конкретный фрагмент синтаксиса

Я пытаюсь воссоздать пример Tijs CurryOn16 "TrafoFields", очищая код от видео, но используя грамматику Java18.rsc вместо его Java15.rsc. Я успешно проанализировал Example.java в ответе, как он это сделал в видео, и получил varpt. Затем я пытаюсь сде…
10 фев '20 в 15:56