blob: be32364410a39f15a89294dfcc4739d0116dbe6c [file] [log] [blame]
The Android Open Source Project9066cfe2009-03-03 19:31:44 -08001#ifndef GENERATE_JAVA_H
2#define GENERATE_JAVA_H
3
4#include "aidl_language.h"
Joe Onoratofdfe2ff2011-08-30 17:24:17 -07005#include "AST.h"
The Android Open Source Project9066cfe2009-03-03 19:31:44 -08006
7#include <string>
8
Christopher Wiley1eaa9ed2015-08-24 14:07:32 -07009using std::string;
10using std::vector;
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080011
12int generate_java(const string& filename, const string& originalSrc,
13 interface_type* iface);
14
Joe Onoratofdfe2ff2011-08-30 17:24:17 -070015Class* generate_binder_interface_class(const interface_type* iface);
16Class* generate_rpc_interface_class(const interface_type* iface);
17
18string gather_comments(extra_text_type* extra);
19string append(const char* a, const char* b);
20
21class VariableFactory
22{
23public:
24 VariableFactory(const string& base); // base must be short
25 Variable* Get(Type* type);
26 Variable* Get(int index);
27private:
28 vector<Variable*> m_vars;
29 string m_base;
30 int m_index;
31};
32
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080033#endif // GENERATE_JAVA_H
34