blob: 1e5da6bb7914fa24249ad71889d5b3de6975c027 [file] [log] [blame]
Brian Carlstrom9ea1cb12011-08-24 23:18:18 -07001// Copyright 2011 Google Inc. All Rights Reserved.
2
3#ifndef ART_SRC_COMPILER_H_
4#define ART_SRC_COMPILER_H_
5
6#include "dex_file.h"
7#include "object.h"
8
9namespace art {
10
11class Compiler {
12 public:
13 void Compile(std::vector<const DexFile*> class_path);
14
15 private:
16 // Attempt to resolve all type, methods, fields, and strings
17 // referenced from code in the dex file following PathClassLoader
18 // ordering semantics.
19 void Resolve(const ClassLoader* class_loader);
20 void ResolveDexFile(const ClassLoader* class_loader, const DexFile& dex_file);
21
22 void CompileDexFile(const ClassLoader* class_loader, const DexFile& dex_file);
23 void CompileClass(Class* klass);
24 void CompileMethod(Method* klass);
25};
26
27} // namespace art
28
29#endif // ART_SRC_COMPILER_H_