aboutsummaryrefslogtreecommitdiffstats
path: root/slang_rs_context.h
diff options
context:
space:
mode:
authorStephen Hines <srhines@google.com>2011-05-10 15:29:50 -0700
committerStephen Hines <srhines@google.com>2011-05-16 17:33:47 -0700
commit593a894650e81be54173106ec266f0311cebebd3 (patch)
tree0c306c1767e0a8389c04ea6ec601d16c9cf60441 /slang_rs_context.h
parentb6809edd6ee8b90982425fb8ad24e867708b46fc (diff)
downloadandroid_frameworks_compile_slang-593a894650e81be54173106ec266f0311cebebd3.tar.gz
android_frameworks_compile_slang-593a894650e81be54173106ec266f0311cebebd3.tar.bz2
android_frameworks_compile_slang-593a894650e81be54173106ec266f0311cebebd3.zip
Simple support for reflecting rsForEach().
BUG=4203264 Change-Id: Idf722ee3fb07c8e46ac0c4628e753ff2fa6840cf
Diffstat (limited to 'slang_rs_context.h')
-rw-r--r--slang_rs_context.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/slang_rs_context.h b/slang_rs_context.h
index 91b1aa1..c49f2d5 100644
--- a/slang_rs_context.h
+++ b/slang_rs_context.h
@@ -48,6 +48,7 @@ namespace slang {
class RSExportable;
class RSExportVar;
class RSExportFunc;
+ class RSExportForEach;
class RSExportType;
class RSContext {
@@ -59,6 +60,7 @@ class RSContext {
typedef std::list<RSExportable*> ExportableList;
typedef std::list<RSExportVar*> ExportVarList;
typedef std::list<RSExportFunc*> ExportFuncList;
+ typedef std::list<RSExportForEach*> ExportForEachList;
typedef llvm::StringMap<RSExportType*> ExportTypeMap;
private:
@@ -88,6 +90,7 @@ class RSContext {
ExportVarList mExportVars;
ExportFuncList mExportFuncs;
+ ExportForEachList mExportForEach;
ExportTypeMap mExportTypes;
public:
@@ -162,6 +165,15 @@ class RSContext {
}
inline bool hasExportFunc() const { return !mExportFuncs.empty(); }
+ typedef ExportForEachList::const_iterator const_export_foreach_iterator;
+ const_export_foreach_iterator export_foreach_begin() const {
+ return mExportForEach.begin();
+ }
+ const_export_foreach_iterator export_foreach_end() const {
+ return mExportForEach.end();
+ }
+ inline bool hasExportForEach() const { return !mExportForEach.empty(); }
+
typedef ExportTypeMap::iterator export_type_iterator;
typedef ExportTypeMap::const_iterator const_export_type_iterator;
export_type_iterator export_types_begin() { return mExportTypes.begin(); }