Resultados da pesquisa a pedido "abstract-syntax-tree"
Atributos da gramática Boost.Spirit: erro do std: vetor de boost :: variant
Eu tenho um analisador de trabalho para ler as descrições de posição de um jogo de tabuleiro (rascunhos internacionais,gramática oficial [http://pdn.fmjd.org/fen.html]): #include <boost/spirit/home/x3.hpp> #include <iostream> namespace x3 ...
Como trabalhar com AST com anotação Cofree?
Eu tenho esse simplesExpr AST e eu podemos facilmente convertê-lo emString. import Prelude hiding (Foldable) import qualified Prelude import Data.Foldable as F import Data.Functor.Foldable import Data.Monoid import Control.Comonad.Cofree data ...
Características de downcast dentro de Rc para manipulação de AST
Estou tentando manipular ASTs em Rust. Haverá muitas manipulações, e eu quero que minhas árvores sejam imutáveis, para economizar tempo, todas as referências serãoRcs. Meus nós da árvore ficarão assim: enum Condition { Equals(Rc<Expression>, ...
Como implementar uma chamada de função com o Antlr para que possa ser chamada mesmo antes de ser definida?
Depois que o AST é construído, qual é a melhor maneira de implementar o caminhante de árvores para que as funções possam ser definidas e chamadas em qualquer ordem? Por exemplo, isso é válido no PHP: <?php f(); // function called before it’s ...
Itens de rotulagem Haskell em função recursiva
Eu sou bastante novo em Haskell e em programação funcional em geral, então desculpe-me se a pergunta parecer direta ou boba. Eu tenho um analisador para uma linguagem simples que produz uma árvore de sintaxe abstrata. Para achatar o AST ...
Adicionando nós ao AST de Clang
Eu preciso inserir novos nós no AST. por exemplo, adicionando um espaço para nome a uma função: Transformando isso - void foo();nisso - namespace bar { void foo(); }Eu liComo clonar ou criar um nó de clang AST ...
Como posso encontrar todas as leituras / gravações de campo membro usando o Clang?
Dado um código fonte C ++, eu quero encontrar os campos de classe que toda função grava e lê. Qual é a melhor maneira de fazer isso usando o front-end do Clang? (Não estou pedindo uma explicação detalhada de todas as etapas; no entanto, seria um ...
Construindo um gráfico de fluxo de controle a partir de um AST com um padrão de visitante usando Java
Estou tentando descobrir como implementar minha classe LEParserCfgVisitor para criar um gráfico de fluxo de controle a partir de uma árvore de sintaxe abstrata já gerada com JavaCC. Eu sei que existem ferramentas que já existem, mas ...
Adicionando informações de linha ao meu AST no OCaml
Estou criando um compilador no OCaml, onde a gramática é a seguinte: type expr = | Cons of const | Var of string | List of ( expr list ) | Sum of ( expr * expr ) | Less_than of ( expr * expr ) | Conditional of ( expr * expr * expr ) | ...
Como gerar o AST construído usando o ANTLR?
Estou criando um analisador estático para C. Fiz o lexer e o analisador usando o ANTLR no qual gera código Java. A ANTLR cria o AST para nós automaticamente,options {output=AST;}? Ou eu mesmo tenho que fazer a árvore? Se isso acontecer, como ...