First pass of compiler wrapping class
Change-Id: I343625310f69cc4de315af91b9cc72bb4da8f59b
diff --git a/src/compiler.h b/src/compiler.h
new file mode 100644
index 0000000..1e5da6b
--- /dev/null
+++ b/src/compiler.h
@@ -0,0 +1,29 @@
+// Copyright 2011 Google Inc. All Rights Reserved.
+
+#ifndef ART_SRC_COMPILER_H_
+#define ART_SRC_COMPILER_H_
+
+#include "dex_file.h"
+#include "object.h"
+
+namespace art {
+
+class Compiler {
+ public:
+ void Compile(std::vector<const DexFile*> class_path);
+
+ private:
+ // Attempt to resolve all type, methods, fields, and strings
+ // referenced from code in the dex file following PathClassLoader
+ // ordering semantics.
+ void Resolve(const ClassLoader* class_loader);
+ void ResolveDexFile(const ClassLoader* class_loader, const DexFile& dex_file);
+
+ void CompileDexFile(const ClassLoader* class_loader, const DexFile& dex_file);
+ void CompileClass(Class* klass);
+ void CompileMethod(Method* klass);
+};
+
+} // namespace art
+
+#endif // ART_SRC_COMPILER_H_