First pass of compiler wrapping class
Change-Id: I343625310f69cc4de315af91b9cc72bb4da8f59b
diff --git a/src/object.cc b/src/object.cc
index 20e462a..bb60dc1 100644
--- a/src/object.cc
+++ b/src/object.cc
@@ -567,6 +567,26 @@
java_lang_String_ = NULL;
}
+// TODO: get global references for these
+Class* PathClassLoader::dalvik_system_PathClassLoader_ = NULL;
+
+PathClassLoader* PathClassLoader::Alloc(std::vector<const DexFile*> dex_files) {
+ PathClassLoader* p = down_cast<PathClassLoader*>(dalvik_system_PathClassLoader_->NewInstance());
+ p->SetClassPath(dex_files);
+ return p;
+}
+
+void PathClassLoader::SetClass(Class* dalvik_system_PathClassLoader) {
+ CHECK(dalvik_system_PathClassLoader_ == NULL);
+ CHECK(dalvik_system_PathClassLoader != NULL);
+ dalvik_system_PathClassLoader_ = dalvik_system_PathClassLoader;
+}
+
+void PathClassLoader::ResetClass() {
+ CHECK(dalvik_system_PathClassLoader_ != NULL);
+ dalvik_system_PathClassLoader_ = NULL;
+}
+
static const char* kClassStatusNames[] = {
"Error",
"NotReady",