Resultados da pesquisa a pedido "abstract-syntax-tree"

1 a resposta

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 ...

1 a resposta

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 ...

1 a resposta

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>, ...

1 a resposta

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 ...

1 a resposta

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 ...

1 a resposta

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 ...

1 a resposta

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 ...

1 a resposta

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 ...

1 a resposta

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 ) | ...

1 a resposta

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 ...