Add support to #pragma rs java_package_name.
Change-Id: Ieb3582511238e1a13056221dfd6e6b3c1f87fe6a
diff --git a/slang_rs_context.hpp b/slang_rs_context.hpp
index 811af7e..bde9f87 100644
--- a/slang_rs_context.hpp
+++ b/slang_rs_context.hpp
@@ -57,12 +57,15 @@
RSPragmaHandler* mRSExportVarPragma;
RSPragmaHandler* mRSExportFuncPragma;
RSPragmaHandler* mRSExportTypePragma;
+ RSPragmaHandler* mRSJavaPackageNamePragma;
/* Remember the variables/types/elements annotated in #pragma to be exported */
NeedExportVarSet mNeedExportVars;
NeedExportFuncSet mNeedExportFuncs;
NeedExportTypeSet mNeedExportTypes;
+ std::string mReflectJavaPackageName;
+
bool processExportVar(const VarDecl* VD);
bool processExportFunc(const FunctionDecl* FD);
bool processExportType(ASTContext& Ctx, const llvm::StringRef& Name);
@@ -83,6 +86,8 @@
inline void addExportFunc(const std::string& S) { mNeedExportFuncs.insert(S); return; }
inline void addExportType(const std::string& S) { mNeedExportTypes.insert(S); return; }
+ inline void setReflectJavaPackageName(const std::string& S) { mReflectJavaPackageName = S; return; }
+
void processExport(ASTContext& Ctx);
typedef ExportVarList::const_iterator const_export_var_iterator;
@@ -111,7 +116,7 @@
*/
bool insertExportType(const llvm::StringRef& TypeName, RSExportType* Type);
- bool reflectToJava(const char* OutputClassPath, const std::string& InputFileName, const std::string& OutputBCFileName);
+ bool reflectToJava(const char* OutputPackageName, const std::string& InputFileName, const std::string& OutputBCFileName);
~RSContext();
};