20 #include "parser/nmodl/location.hh"
21 #include "parser/nmodl/nmodl_parser.hpp"
27 using Token = parser::NmodlParser::token;
void symbol_type(const std::string &name, T &value)
static double location(void *v)
encapsulates code generation backend implementations
SymbolType prime_symbol(std::string text, PositionType &pos)
Create symbol for ast::Prime AST class.
parser::NmodlParser::symbol_type SymbolType
TokenType token_type(const std::string &name)
Return token type for given token name.
parser::NmodlParser::token Token
parser::NmodlParser::token_type TokenType
SymbolType name_symbol(const std::string &text, PositionType &pos, TokenType type)
Create symbol for ast::Name AST class.
SymbolType double_symbol(const std::string &value, PositionType &pos)
Create a symbol for ast::Double AST class.
parser::location PositionType
SymbolType string_symbol(const std::string &text, PositionType &pos)
Create symbol for ast::String AST class.
SymbolType integer_symbol(int value, PositionType &pos, const char *text)
Create a symbol for ast::Integer AST.
SymbolType token_symbol(const std::string &key, PositionType &pos, TokenType type)
Create symbol for AST class.