| 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();
 | 
|  };
 | 
|  
 | 
|  }
 | 
| 
 |