1#ifndef GENERATE_JAVA_H
2#define GENERATE_JAVA_H
3
4#include "aidl_language.h"
5#include "AST.h"
6
7#include <string>
8
9using namespace std;
10
11int generate_java(const string& filename, const string& originalSrc,
12                interface_type* iface);
13
14Class* generate_binder_interface_class(const interface_type* iface);
15Class* generate_rpc_interface_class(const interface_type* iface);
16
17string gather_comments(extra_text_type* extra);
18string append(const char* a, const char* b);
19
20class VariableFactory
21{
22public:
23    VariableFactory(const string& base); // base must be short
24    Variable* Get(Type* type);
25    Variable* Get(int index);
26private:
27    vector<Variable*> m_vars;
28    string m_base;
29    int m_index;
30};
31
32#endif // GENERATE_JAVA_H
33
34