lux/macro/ast
Structs
Eq<AST>
(lux/control/eq;Eq lux;AST)
Values
(bool x)
(-> lux;Bool lux;AST)
(char x)
(-> lux;Char lux;AST)
(form x)
(-> (lux;List lux;AST) lux;AST)
(frac x)
(-> lux;Frac lux;AST)
(int x)
(-> lux;Int lux;AST)
(local-symbol name)
Produces a local symbol (a symbol with no module prefix).
(-> lux;Text lux;AST)
(local-tag name)
Produces a local tag (a tag with no module prefix).
(-> lux;Text lux;AST)
(nat x)
(-> lux;Nat lux;AST)
(real x)
(-> lux;Real lux;AST)
(record x)
(-> (lux;List [lux;AST lux;AST]) lux;AST)
(replace original substitute ast)
Replaces all ASTs that look like 'original' with the 'substitute' in the given AST.
(-> lux;AST lux;AST lux;AST lux;AST)
(symbol x)
(-> lux;Ident lux;AST)
(tag x)
(-> lux;Ident lux;AST)
(text x)
(-> lux;Text lux;AST)
(to-text ast)
(-> lux;AST lux;Text)
(tuple x)
(-> (lux;List lux;AST) lux;AST)