| Index: Source/bindings/dart/DartHandleProxy.h
|
| diff --git a/Source/bindings/dart/DartHandleProxy.h b/Source/bindings/dart/DartHandleProxy.h
|
| index 24025717b44f2e7d0da7568948b74dfa6d3827cd..ebc49e4250ab984c984dd5bc71f2430f3fb76d1b 100644
|
| --- a/Source/bindings/dart/DartHandleProxy.h
|
| +++ b/Source/bindings/dart/DartHandleProxy.h
|
| @@ -31,13 +31,17 @@
|
| #ifndef DartHandleProxy_h
|
| #define DartHandleProxy_h
|
|
|
| +#include "bindings/dart/DartUtilities.h"
|
| +
|
| #include <dart_api.h>
|
| +#include <dart_debugger_api.h>
|
| #include <dart_mirrors_api.h>
|
| #include <v8.h>
|
|
|
| namespace WebCore {
|
|
|
| class Node;
|
| +class DartScriptValue;
|
|
|
| class DartHandleProxy {
|
| public:
|
| @@ -49,6 +53,26 @@ public:
|
| static bool isDartProxy(v8::Handle<v8::Value>);
|
| static const char* getJavaScriptType(v8::Handle<v8::Value>);
|
| static Node* toNativeNode(v8::Handle<v8::Value>);
|
| + static Dart_Handle unwrapValue(v8::Handle<v8::Value>);
|
| +
|
| +};
|
| +
|
| +/**
|
| + * Helper class to manage all scopes that must be entered to safely invoke Dart
|
| + * code.
|
| + */
|
| +class DartScopes {
|
| +private:
|
| + DartScriptValue* scriptValue;
|
| + DartIsolateScope scope;
|
| + DartApiScope apiScope;
|
| + Dart_ExceptionPauseInfo previousPauseInfo;
|
| +
|
| +public:
|
| + Dart_Handle handle;
|
| +
|
| + DartScopes(v8::Local<v8::Object> v8Handle);
|
| + ~DartScopes();
|
| };
|
|
|
| }
|
|
|