MCPcopy Create free account
hub / github.com/EmbeddedRPC/erpc / JavaGenerator

Class JavaGenerator

erpcgen/src/JavaGenerator.hpp:25–337  ·  view source on GitHub ↗

! * @brief Code generator for Jva. */

Source from the content-addressed store, hash-verified

23 * @brief Code generator for Jva.
24 */
25class JavaGenerator : public Generator
26{
27public:
28 /*!
29 * @brief This function is constructor of JavaGenerator class.
30 *
31 * @param[in] def Contains all Symbols parsed from IDL files.
32 */
33 explicit JavaGenerator(InterfaceDefinition *def, const std::string javaPackageName);
34
35 /*!
36 * @brief This function is destructor of JavaGenerator class.
37 *
38 * This function close opened files.
39 */
40 virtual ~JavaGenerator() {}
41
42 /*!
43 * @brief This function generate output code for output files.
44 *
45 * This code call all necessary functions for prepare output code and parse it into output files.
46 */
47 virtual void generate() override;
48
49protected:
50 std::string m_suffixStrip; //!< String to remove from suffixes of names.
51 size_t m_suffixStripSize; //!< Length of the suffix filter string.
52 std::string m_javaPackageName; //!< Used java package.
53
54 /*!
55 * @brief This function prepare helpful functions located in template files.
56 *
57 * These function may be used while parsing templates
58 */
59 void parseSubtemplates();
60
61 /*!
62 * @brief This function generate output files.
63 *
64 * This function call functions for generating client/server source files.
65 *
66 * @param[in] fileName Name for output files.
67 */
68 void generateOutputFiles(const std::string &fileName) override;
69
70 /*!
71 * @brief This function generate output common module.
72 *
73 * @param[in] fileName Name for output files.
74 */
75 void generateCommonFile(std::string fileName);
76
77 /*!
78 * @brief This function generate output client file.
79 *
80 * @param[in] fileName Name for output files.
81 */
82 void generateClientFile(std::string fileName);

Callers 1

runMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected