Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(314)

Side by Side Diff: sky/engine/bindings/builtin.cc

Issue 1107803002: Add Observatory to sky dart_controller (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "sky/engine/config.h" 5 #include "sky/engine/config.h"
6 #include "sky/engine/bindings/builtin.h" 6 #include "sky/engine/bindings/builtin.h"
7 7
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "bin/io_natives.h"
9 #include "dart/runtime/include/dart_api.h" 10 #include "dart/runtime/include/dart_api.h"
10 #include "gen/sky/bindings/DartGlobal.h" 11 #include "gen/sky/bindings/DartGlobal.h"
11 #include "sky/engine/bindings/builtin_natives.h" 12 #include "sky/engine/bindings/builtin_natives.h"
12 #include "sky/engine/bindings/builtin_sky.h" 13 #include "sky/engine/bindings/builtin_sky.h"
13 #include "sky/engine/bindings/mojo_natives.h" 14 #include "sky/engine/bindings/mojo_natives.h"
14 #include "sky/engine/tonic/dart_builtin.h" 15 #include "sky/engine/tonic/dart_builtin.h"
15 16
16 namespace blink { 17 namespace blink {
17 namespace { 18 namespace {
18 19
19 struct LibraryDescriptor { 20 struct LibraryDescriptor {
20 const char* url; 21 const char* url;
21 bool has_natives; 22 bool has_natives;
22 Dart_NativeEntrySymbol native_symbol; 23 Dart_NativeEntrySymbol native_symbol;
23 Dart_NativeEntryResolver native_resolver; 24 Dart_NativeEntryResolver native_resolver;
24 }; 25 };
25 26
26 const LibraryDescriptor kBuiltinLibraries[] = { 27 const LibraryDescriptor kBuiltinLibraries[] = {
27 /* { url_, has_natives_, native_symbol_, native_resolver_ } */ 28 /* { url_, has_natives_, native_symbol_, native_resolver_ } */
28 {"dart:sky_builtin", 29 {"dart:sky_builtin",
29 true, 30 true,
30 BuiltinNatives::NativeSymbol, 31 BuiltinNatives::NativeSymbol,
31 BuiltinNatives::NativeLookup}, 32 BuiltinNatives::NativeLookup},
32 {"dart:sky", true, skySnapshotSymbolizer, skySnapshotResolver}, 33 {"dart:sky", true, skySnapshotSymbolizer, skySnapshotResolver},
33 {"dart:mojo.internal", true, MojoNativeSymbol, MojoNativeLookup}, 34 {"dart:mojo.internal", true, MojoNativeSymbol, MojoNativeLookup},
35 {"dart:io", true, dart::bin::IONativeSymbol, dart::bin::IONativeLookup },
34 }; 36 };
35 37
36 } // namespace 38 } // namespace
37 39
38 void Builtin::SetNativeResolver(BuiltinLibraryId id) { 40 void Builtin::SetNativeResolver(BuiltinLibraryId id) {
39 static_assert(arraysize(kBuiltinLibraries) == kInvalidLibrary, 41 static_assert(arraysize(kBuiltinLibraries) == kInvalidLibrary,
40 "Unexpected number of builtin libraries"); 42 "Unexpected number of builtin libraries");
41 DCHECK_GE(id, kBuiltinLibrary); 43 DCHECK_GE(id, kBuiltinLibrary);
42 DCHECK_LT(id, kInvalidLibrary); 44 DCHECK_LT(id, kInvalidLibrary);
43 if (kBuiltinLibraries[id].has_natives) { 45 if (kBuiltinLibraries[id].has_natives) {
(...skipping 10 matching lines...) Expand all
54 static_assert(arraysize(kBuiltinLibraries) == kInvalidLibrary, 56 static_assert(arraysize(kBuiltinLibraries) == kInvalidLibrary,
55 "Unexpected number of builtin libraries"); 57 "Unexpected number of builtin libraries");
56 DCHECK_GE(id, kBuiltinLibrary); 58 DCHECK_GE(id, kBuiltinLibrary);
57 DCHECK_LT(id, kInvalidLibrary); 59 DCHECK_LT(id, kInvalidLibrary);
58 Dart_Handle library = DartBuiltin::LookupLibrary(kBuiltinLibraries[id].url); 60 Dart_Handle library = DartBuiltin::LookupLibrary(kBuiltinLibraries[id].url);
59 DART_CHECK_VALID(library); 61 DART_CHECK_VALID(library);
60 return library; 62 return library;
61 } 63 }
62 64
63 } // namespace blink 65 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698