Resultados de la búsqueda a petición "abstract-syntax-tree"

1 la respuesta

Atributos de la gramática Boost.Spirit: error de std: vector de boost :: variant

Obtuve un analizador funcional para leer las descripciones de posición para un juego de mesa (borradores internacionales,gramática oficial [http://pdn.fmjd.org/fen.html]): #include <boost/spirit/home/x3.hpp> #include <iostream> namespace x3 ...

1 la respuesta

¿Cómo trabajar con AST con anotación Cofree?

Tengo este simpleExpr AST y puedo convertirlo fácilmente aString. import Prelude hiding (Foldable) import qualified Prelude import Data.Foldable as F import Data.Functor.Foldable import Data.Monoid import Control.Comonad.Cofree data ExprF r = ...

1 la respuesta

Rasgos abatidos dentro de Rc para la manipulación de AST

Estoy tratando de manipular AST en Rust. Habrá muchas manipulaciones, y quiero que mis árboles sean inmutables, por lo que para ahorrar tiempo todas las referencias seránRcs. Los nodos de mi árbol se verán así: enum Condition { ...

1 la respuesta

¿Cómo implementar una llamada de función con Antlr para que se pueda llamar incluso antes de que se defina?

Una vez que se construye el AST, ¿cuál es la mejor manera de implementar el andador para que las funciones se puedan definir y llamar en cualquier orden? Por ejemplo, esto es válido en PHP: <?php f(); // function called before it’s defined ...

1 la respuesta

Elementos de etiquetado de Haskell en función recursiva

Soy bastante nuevo en Haskell y la programación funcional en general, así que discúlpeme si la pregunta parece sencilla o tonta. Tengo un analizador para un lenguaje simple que produce un árbol de sintaxis abstracta. Para aplanar el AST ...

1 la respuesta

Agregar nodos al AST de Clang

Necesito insertar nuevos nodos en AST. por ejemplo, agregar un espacio de nombres a una función: Convertir esto - void foo();dentro de esto - namespace bar { void foo(); }Yo leo¿Cómo clonar o crear un nodo AST Stmt de ...

1 la respuesta

¿Cómo puedo encontrar todos los campos de miembros leídos / escritos usando Clang?

Dado un código fuente de C ++, quiero encontrar los campos de clase que cada función escribe y lee. ¿Cuál es la mejor manera de hacer esto usando la interfaz de Clang? (No estoy pidiendo una explicación detallada de todos los pasos; sin embargo, ...

1 la respuesta

Construir un gráfico de flujo de control desde un AST con un patrón de visitante utilizando Java

Estoy tratando de descubrir cómo implementar mi clase LEParserCfgVisitor para construir un gráfico de flujo de control a partir de un Árbol de sintaxis abstracta ya generado con JavaCC. Sé que ya existen herramientas, pero estoy tratando de ...

1 la respuesta

Agregar información de línea a mi AST en OCaml

Estoy creando un compilador en OCaml donde la gramática es la siguiente: 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 la respuesta

¿Cómo generar el AST creado con ANTLR?

Estoy haciendo un analizador estático para C. He realizado el lexer y el analizador utilizando ANTLR en el que se genera el código Java. ¿ANTLR crea el AST para nosotros automáticamente poroptions {output=AST;}? ¿O tengo que hacer el árbol yo ...