42 std::variant<std::string, FILE*, std::monostate>
input_source = std::monostate{};
65 std::shared_ptr<AST::Program>
program();
void * yyscan_t
Definition BashppParser.h:14
A driver class to wrap around the Bison-generated parser for Bash++. This class manages both the lexe...
Definition BashppParser.h:24
void setInputFromFilePath(const std::string &file_path)
Definition BashppParser.cpp:113
void setInputFromFilePtr(FILE *file_ptr, const std::string &file_path)
Definition BashppParser.cpp:119
void setDisplayLexerOutput(bool enabled)
Definition BashppParser.cpp:106
enum AST::BashppParser::InputType input_type
std::variant< std::string, FILE *, std::monostate > input_source
Definition BashppParser.h:42
std::vector< std::string > include_chain
Definition BashppParser.h:34
bool getUTF16Mode() const
Definition BashppParser.cpp:102
std::shared_ptr< AST::Program > m_program
Definition BashppParser.h:27
void _parse()
Definition BashppParser.cpp:81
void _destroy_lexer()
Definition BashppParser.cpp:71
std::string input_file_path
Definition BashppParser.h:33
std::shared_ptr< AST::Program > program()
Definition BashppParser.cpp:134
bool current_command_can_receive_lvalues
Definition BashppParser.h:28
bool display_lexer_output
Definition BashppParser.h:31
void _initialize_lexer()
Definition BashppParser.cpp:26
void setIncludeChain(const std::vector< std::string > &includes)
Definition BashppParser.cpp:130
void setInputFromStringContents(const std::string &contents)
Definition BashppParser.cpp:125
InputType
Definition BashppParser.h:36
bool getDisplayLexerOutput() const
Definition BashppParser.cpp:109
std::string input_string_contents
Definition BashppParser.h:43
bool utf16_mode
Definition BashppParser.h:30
FILE * input_file
Definition BashppParser.h:45
void setUTF16Mode(bool enabled)
Definition BashppParser.cpp:99
yyscan_t lexer
Definition BashppParser.h:26
Definition AccessModifier.h:8