10 #ifndef _EMBEDDED_RPC__INTERFACEDEFINITION_H_ 11 #define _EMBEDDED_RPC__INTERFACEDEFINITION_H_ 13 #include "AstNode.hpp" 14 #include "types/Program.hpp" 15 #include "types/SymbolScope.hpp" 67 void parse(
const char *inputFile);
93 void setProgramInfo(
const std::string &fileName,
const std::string &outputFilePath, codec_t codec);
100 void setProgramName(
const std::string &programName) { m_programName = programName; }
167 std::string m_programName;
168 std::string m_outputFilename;
169 std::filesystem::path m_outputDirectory;
177 void createBuiltinTypes();
182 #endif // _EMBEDDED_RPC__INTERFACEDEFINITION_H_ Collects all definitions from an IDL.
Definition: InterfaceDefinition.hpp:31
codec_t getCodecType()
This function returns used codec type in eRPC application.
Definition: InterfaceDefinition.hpp:153
virtual ~InterfaceDefinition()
Destructor.
Definition: InterfaceDefinition.hpp:48
void setOutputFilename(const std::string &filename)
This function sets output file name.
Definition: InterfaceDefinition.cpp:116
Homogeneous AST node class.
Definition: AstNode.hpp:36
AstNode * getAst()
This function returns node belong to this object.
Definition: InterfaceDefinition.hpp:74
Program declaration.
Definition: Program.hpp:28
Program * getProgramSymbol()
This function returns program symbol.
Definition: InterfaceDefinition.cpp:104
uint16_t getIdlCrc16()
This function returns crc16 of all used IDL files.
Definition: InterfaceDefinition.hpp:160
void parse(const char *inputFile)
This function parse given IDL file.
Definition: InterfaceDefinition.cpp:47
const std::string & getName() const
This function returns symbol name.
Definition: Symbol.hpp:116
A scoped namespace containing symbols.
Definition: SymbolScope.hpp:28
std::filesystem::path getOutputDirectory()
This function returns output directory path.
Definition: InterfaceDefinition.hpp:114
std::string getOutputFilename()
This function returns output file name.
Definition: InterfaceDefinition.hpp:121
const std::string getProgramName()
This function returns program name.
Definition: InterfaceDefinition.hpp:107
InterfaceDefinition()
Default constructor.
Definition: InterfaceDefinition.cpp:30
void init()
This function initialize symbol scope variable m_globals.
Definition: InterfaceDefinition.cpp:42
void setProgramName(const std::string &programName)
This function sets program name.
Definition: InterfaceDefinition.hpp:100
bool hasProgramSymbol()
This function returns information if program symbol was set in parsed file.
Definition: InterfaceDefinition.cpp:99
SymbolScope & getGlobals()
This function returns global symbol scope.
Definition: InterfaceDefinition.hpp:81
Definition: AstNode.hpp:26
void setProgramInfo(const std::string &fileName, const std::string &outputFilePath, codec_t codec)
This function sets program information.
Definition: InterfaceDefinition.cpp:92