10 #ifndef _EMBEDDED_RPC__PYTHONGENERATOR_H_ 11 #define _EMBEDDED_RPC__PYTHONGENERATOR_H_ 13 #include "Generator.hpp" 14 #include "cpptempl.hpp" 235 std::string
filterName(
const std::string &name);
276 #endif // _EMBEDDED_RPC__PYTHONGENERATOR_H_ virtual void generate() override
This function generate output code for output files.
Definition: PythonGenerator.cpp:117
Collects all definitions from an IDL.
Definition: InterfaceDefinition.hpp:31
void makeFunctionsTemplateData()
This function sets function type template data.
Definition: PythonGenerator.cpp:575
Leading multi-line comment.
Definition: PythonGenerator.hpp:240
Member of a struct.
Definition: StructMember.hpp:38
std::string getBuiltinTypename(const BuiltinType *t)
This function return string representation for given BuiltinType.
Definition: PythonGenerator.cpp:792
void generateInitFile(std::string fileName)
This function generate output package init file.
Definition: PythonGenerator.cpp:68
Trailing inline comment.
Definition: PythonGenerator.hpp:241
void setOneStructMemberTemplateData(StructMember *member, cpptempl::data_map &member_info)
Fill in template data for a single struct member.
Definition: PythonGenerator.cpp:557
std::string m_suffixStrip
String to remove from suffixes of names.
Definition: PythonGenerator.hpp:53
bool checkWhitspaceChar(char c)
Check if character is whitespace type.
Definition: PythonGenerator.cpp:944
void generateServerFile(std::string fileName)
This function generate output server file.
Definition: PythonGenerator.cpp:86
PythonGenerator(InterfaceDefinition *def)
This function is constructor of PythonGenerator class.
Definition: PythonGenerator.cpp:40
void generateClientFile(std::string fileName)
This function generate output client file.
Definition: PythonGenerator.cpp:80
Represents the builtin atomic types.
Definition: BuiltinType.hpp:26
Structure data type.
Definition: StructType.hpp:29
Function declaration.
Definition: Function.hpp:117
Base class for all named declarations in the IDL.
Definition: Symbol.hpp:28
virtual ~PythonGenerator()
This function is destructor of PythonGenerator class.
Definition: PythonGenerator.hpp:43
void generateInterfaceFile(std::string fileName)
This function generate output interface file.
Definition: PythonGenerator.cpp:92
void setStructMembersTemplateData(StructType *structType, cpptempl::data_map &structInfo)
This function sets struct member information to struct data map variable.
Definition: PythonGenerator.cpp:521
cpptempl::data_map getFunctionTemplateData(Group *group, Function *fn) override
This function return interface function template data.
Definition: PythonGenerator.cpp:172
void parseSubtemplates()
This function prepare helpful functions located in template files.
Definition: PythonGenerator.cpp:104
Code generator for Python.
Definition: PythonGenerator.hpp:28
void initPythonReservedWords()
Definition: PythonGenerator.cpp:991
std::string getFunctionPrototype(Function *fn)
This function return interface function prototype.
Definition: PythonGenerator.cpp:269
Abstract code generator base class.
Definition: Generator.hpp:45
virtual void generateGlobalInitFile()
This function generate output crc16 source file.
Definition: PythonGenerator.cpp:98
std::string stripWhitespace(const std::string &s)
Strip leading and trailing whitespace.
Definition: PythonGenerator.cpp:953
Base class for data types.
Definition: DataType.hpp:26
std::string filterName(const std::string &name)
Filter symbol names.
Definition: PythonGenerator.cpp:827
void makeConstTemplateData()
This function sets const template data.
Definition: PythonGenerator.cpp:293
std::string convertComment(const std::string &comment, comment_type commentType)
Converts a C++-style Doxygen comment into a Python Doxygen comment.
Definition: PythonGenerator.cpp:841
void setTemplateComments(Symbol *symbol, cpptempl::data_map &symbolInfo) override
This function will get symbol comments and convert to language specific ones.
Definition: PythonGenerator.cpp:166
An interface that contains functions.
Definition: Group.hpp:28
void makeAliasesTemplateData()
Fill in template data for type aliases.
Definition: PythonGenerator.cpp:369
Enumerate data type.
Definition: EnumType.hpp:28
comment_type
Possible Doxygen comment styles.
Definition: PythonGenerator.hpp:238
cpptempl::data_map makeGroupSymbolsTemplateData(Group *group) override
This function sets group symbols template data.
Definition: PythonGenerator.cpp:408
void makeEnumsTemplateData()
This function sets enum template data.
Definition: PythonGenerator.cpp:328
cpptempl::data_map getTypeInfo(DataType *t)
This function return necessary template data for data type.
Definition: PythonGenerator.cpp:601
size_t m_suffixStripSize
Length of the suffix filter string.
Definition: PythonGenerator.hpp:54
void generateCommonFile(std::string fileName)
This function generate output common module.
Definition: PythonGenerator.cpp:74
void generateOutputFiles(const std::string &fileName) override
This function generate output files.
Definition: PythonGenerator.cpp:54
Definition: AstNode.hpp:26
cpptempl::data_list getEnumMembersTemplateData(EnumType *enumType)
This function return enum members template data.
Definition: PythonGenerator.cpp:351