Описание тега abstract-syntax-tree
Абстрактные синтаксические деревья (AST) представляют рекурсивную структуру формального документа (исходного кода программы).
2
ответа
Бизон - передать значения для следующего производства
field_dec: type id_list ; id_list: ID punct id_list | ID SQUARE_OPEN INTEGER SQUARE_CLOSED punct id_list | ID punct | ID SQUARE_OPEN INTEGER SQUARE_CLOSED punct ; type: INT | BOOLEAN ; punct: COMMA | SEMICOLON ; У меня есть грамматика бизонов, как у…
11 окт '15 в 12:13
1
ответ
Организация требований и перемещение их в документ.
Я организую код в приложении. Операторы require не организованы, поэтому я создал этот код для сортировки и добавления их в верхней части страницы. Кодмод работает, почти идеально. У меня есть некоторые сомнения: Это нормально, или есть более правил…
21 июн '16 в 23:44
2
ответа
Что означает ключевое слово send в AST в Ruby?
Я пытаюсь изучить лексер и анализатор Ruby (анализатор whitequark), чтобы узнать больше о процедуре дальнейшей генерации машинного кода из сценария Ruby. При разборе следующей строки кода Ruby. def add(a, b) return a + b end puts add 1, 2 Это привод…
01 июн '17 в 05:44
1
ответ
Построение дерева: размножить поддерево для ребенка
Предположим, у меня есть эта простая и бессмысленная грамматика: propagate : what^ where*; what : CHAR^; where : NUMBER -> ^(PLUS NUMBER); NUMBER : '0'..'9'; CHAR : 'a'..'z'; PLUS : '+'; Если он разбирает строку как a123456789, он генерирует AST,…
09 янв '13 в 19:24
2
ответа
clang libTooling: Как узнать, из какого заголовка вышел элемент AST?
Примеры, найденные в Интернете для инструментов clang, всегда выполняются на игрушечных примерах, которые обычно являются действительно тривиальными программами на Си. Я создаю инструмент, который выполняет преобразования исходного кода в код C++, ч…
22 сен '14 в 01:27
1
ответ
Как мне разобрать источник на Haskell в AST на Haskell?
Я пытаюсь разобрать исходный файл на Haskell в AST. Я новичок в парсерах, поэтому я не уверен, как сделать свой собственный. Мне просто интересно, есть ли функция, которая принимает файл и возвращает AST. Я также думал, что это может сработать, чтоб…
29 июл '13 в 21:54
3
ответа
Компилятор AST как реализовать операторы и выражения
В настоящее время работает над небольшим игрушечным компилятором, рассмотрим этот код // AST base class abstract class AST { /* codegen methods */} // abstract classes for Statements and Expressions abstract class Statement : AST {} abstract class E…
30 окт '15 в 02:05
2
ответа
Получите детали исходного скрипта, аналогично inspect.getmembers(), без импорта скрипта
Я пытаюсь получить источник, список вызываемых, значения по умолчанию, ключевые слова, аргументы и переменные функций в скрипте Python. В настоящее время я импортирую модуль и использую питон inspect модуля getmembers функция и прохождение isfunctio…
14 авг '17 в 23:07
1
ответ
Застрял на шаге 0 использования LibTooling и LibASTMatchers
Я пытаюсь следовать учебному руководству в http://clang.llvm.org/docs/LibASTMatchersTutorial.html и застрял на шаге 0. Я управляю командой git checkout next и я получаю error: pathspec 'release' did not match any file(s) known to git Пожалуйста помо…
12 янв '18 в 16:50
2
ответа
Как создать анализатор AST, который допускает синтаксические ошибки?
Во-первых, что читать о разборе и построении AST? Как создать синтаксический анализатор для языка (например, SQL), который будет создавать AST и допускать синтаксические ошибки? Например, для "3+4*5": + / \ 3 * / \ 4 5 А для "3+4*+" с синтаксической…
26 сен '14 в 12:25
1
ответ
Как визуализировать каждый шаг построения АСТ
Я кодирую синтаксический анализатор выражения и его визуализации, что означает, что каждый шаг разбора рекурсивного спуска или построения AST будет визуализироваться как крошечная версия VisuAlgo. // Expression grammer Goal -> Expr Expr -> Ter…
21 апр '18 в 21:48
0
ответов
Как получить все поля из Javaparser
У меня есть пример кода, который использует анализатор библиотеки рекордера, чтобы получить все поля любого исходного кода Java. Вот код Первый класс абстрагирует метод execute import java.util.List; import recoder.abstraction.Field; import recoder.…
23 авг '18 в 14:35
1
ответ
Как получить и изменить Xtend AST
Привет всем, Я хотел бы написать плагин Eclipse для обработки и изменения AST текущего редактора xtend. Как я могу получить AST редактора xtend? Спасибо!
30 ноя '14 в 11:18
0
ответов
Слияние файлов JS независимо от форматирования. ех. слияние esprima ast's
Знаете ли вы какой-либо инструмент для слияния файла JS в другой, но сохранить форматирование? напр., слияние x({a: 5, b: 6}); в x({ a: 1, b: 2, }); и результат будет x({ a: 5, b: 6, }); вместо конфликта слияния Я думаю, что инструмент, который може…
04 мар '15 в 09:07
0
ответов
Макрос VBA, который вычисляет выражение, данное в файле XML
На самом деле, с учетом XML-файла, описываемого с помощью дерева AST-выражения (математического), вам нужно создать макрос, который должен считать мое выражение и выводить ответ с готовой формулой. Есть идеи программно, но очень далеко введите описа…
05 дек '17 в 16:22
0
ответов
ObjCArray Литеральное соответствие в clang
При использовании лягушки ASTMatchers кажется, что нет API для обработки сопоставления с ObjCArrayLiteral. Я ошибаюсь или есть API для этого?
23 мар '18 в 20:47
1
ответ
Как ast.literal_eval работает со списком словарей?
Работает ли ast.literal_eval() со списком словарей? Для меня это дает неправильную строку? [[u'ABN ', u'12', u '', 2.69, u'222.222.222.222 ', u'253', u'ID99 ', u'Savings', u'300 ', u'-120', u'Not Useful '], [u'DB', u'44 ', u' ', 2.628, u'333.333.333…
18 апр '14 в 22:35
0
ответов
Неустановленный шаблон функции / класса ast не генерируется clang
Я работаю над синтаксическим анализатором C/C++, основанным на clang libtooling. Я использую AST, сгенерированный clang для разбора кода. Недавно я заметил, что для шаблонного класса или функции, которая не является экземпляром Clang, не генерируетс…
26 фев '17 в 09:48
1
ответ
Как найти все поля для чтения / записи с помощью Clang?
Учитывая исходный код C++, я хочу найти поля класса, которые каждая функция пишет и читает. Каков наилучший способ сделать это с помощью внешнего интерфейса Clang? (Я не прошу подробного объяснения всех шагов; однако отправная точка для эффективного…
13 апр '17 в 08:53
1
ответ
Изменение синтаксиса Java
Я хочу использовать существующий Java AST от Rascal, предоставляемый в библиотеке m3, но я хотел бы расширить его, чтобы добавить некоторые функции. Мы работаем с Java-подобным языком (около 95% Java и 5% наших специфических функций). В идеале я хот…
11 авг '15 в 14:15