// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. #ifndef VM_BOOTSTRAP_H_ #define VM_BOOTSTRAP_H_ #include "vm/allocation.h" namespace dart { // Forward declarations. class Library; class RawError; class RawScript; class Script; class Bootstrap : public AllStatic { public: static RawScript* LoadASyncScript(bool patch); static RawScript* LoadCoreScript(bool patch); static RawScript* LoadCollectionScript(bool patch); static RawScript* LoadCollectionDevScript(bool patch); static RawScript* LoadMathScript(bool patch); static RawScript* LoadIsolateScript(bool patch); static RawScript* LoadMirrorsScript(bool patch); static RawScript* LoadScalarlistScript(bool patch); static RawError* Compile(const Library& library, const Script& script); static void SetupNativeResolver(); private: static RawScript* LoadScript(const char* url, const char* source, bool patch); static const char async_source_[]; static const char async_patch_[]; static const char corelib_source_[]; static const char corelib_patch_[]; static const char collection_source_[]; static const char collection_dev_source_[]; static const char math_source_[]; static const char math_patch_[]; static const char isolate_source_[]; static const char isolate_patch_[]; static const char mirrors_source_[]; static const char mirrors_patch_[]; static const char scalarlist_source_[]; static const char scalarlist_patch_[]; }; } // namespace dart #endif // VM_BOOTSTRAP_H_