text: // Copyright 2014 The Chromium Authors. All rights reserved.
  // Use of this source code is governed by a BSD-style license that can be
  // found in the LICENSE file.
  
  // This file has been auto-generated by code_generator_v8.py.
  // DO NOT MODIFY!
  
  // This file has been generated from the Jinja2 template in
  // third_party/WebKit/Source/bindings/templates/interface.h.tmpl
  
  // clang-format off
  #ifndef V8TestInterfaceSecureContext_h
  #define V8TestInterfaceSecureContext_h
  
  #include "bindings/core/v8/GeneratedCodeHelper.h"
  #include "bindings/core/v8/NativeValueTraits.h"
  #include "bindings/core/v8/ToV8ForCore.h"
  #include "bindings/core/v8/V8BindingForCore.h"
  #include "bindings/tests/idls/core/TestInterfaceSecureContext.h"
  #include "core/CoreExport.h"
  #include "platform/bindings/ScriptWrappable.h"
  #include "platform/bindings/V8DOMWrapper.h"
  #include "platform/bindings/WrapperTypeInfo.h"
  #include "platform/heap/Handle.h"
  
  namespace blink {
  
  class V8TestInterfaceSecureContext {
    STATIC_ONLY(V8TestInterfaceSecureContext);
   public:
    CORE_EXPORT static bool hasInstance(v8::Local<v8::Value>, v8::Isolate*);
    static v8::Local<v8::Object> findInstanceInPrototypeChain(v8::Local<v8::Value>, v8::Isolate*);
    CORE_EXPORT static v8::Local<v8::FunctionTemplate> domTemplate(v8::Isolate*, const DOMWrapperWorld&);
    static TestInterfaceSecureContext* ToImpl(v8::Local<v8::Object> object) {
      return ToScriptWrappable(object)->ToImpl<TestInterfaceSecureContext>();
    }
    CORE_EXPORT static TestInterfaceSecureContext* ToImplWithTypeCheck(v8::Isolate*, v8::Local<v8::Value>);
    CORE_EXPORT static const WrapperTypeInfo wrapperTypeInfo;
    static void Trace(Visitor* visitor, ScriptWrappable* scriptWrappable) {
      visitor->TraceFromGeneratedCode(scriptWrappable->ToImpl<TestInterfaceSecureContext>());
    }
    static void TraceWrappers(ScriptWrappableVisitor* visitor, ScriptWrappable* scriptWrappable) {
      visitor->TraceWrappersFromGeneratedCode(scriptWrappable->ToImpl<TestInterfaceSecureContext>());
    }
    static const int internalFieldCount = kV8DefaultWrapperInternalFieldCount;
    CORE_EXPORT static void preparePrototypeAndInterfaceObject(v8::Local<v8::Context>, const DOMWrapperWorld&, v8::Local<v8::Object> prototypeObject, v8::Local<v8::Function> interfaceObject, v8::Local<v8::FunctionTemplate> interfaceTemplate);
  
    // Callback functions
  
    CORE_EXPORT static void secureContextAttributeAttributeGetterCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextAttributeAttributeSetterCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextRuntimeEnabledAttributeAttributeGetterCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextRuntimeEnabledAttributeAttributeSetterCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextWindowExposedAttributeAttributeGetterCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextWindowExposedAttributeAttributeSetterCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextWorkerExposedAttributeAttributeGetterCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextWorkerExposedAttributeAttributeSetterCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextWindowExposedRuntimeEnabledAttributeAttributeGetterCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextWindowExposedRuntimeEnabledAttributeAttributeSetterCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextWorkerExposedRuntimeEnabledAttributeAttributeGetterCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextWorkerExposedRuntimeEnabledAttributeAttributeSetterCallback(const v8::FunctionCallbackInfo<v8::Value>&);
  
    CORE_EXPORT static void secureContextMethodMethodCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextRuntimeEnabledMethodMethodCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextWindowExposedMethodMethodCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextWorkerExposedMethodMethodCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextWindowExposedRuntimeEnabledMethodMethodCallback(const v8::FunctionCallbackInfo<v8::Value>&);
    CORE_EXPORT static void secureContextWorkerExposedRuntimeEnabledMethodMethodCallback(const v8::FunctionCallbackInfo<v8::Value>&);
  
    static void InstallRuntimeEnabledFeaturesOnTemplate(
        v8::Isolate*,
        const DOMWrapperWorld&,
        v8::Local<v8::FunctionTemplate> interface_template);
  };
  
  template <>
  struct NativeValueTraits<TestInterfaceSecureContext> : public NativeValueTraitsBase<TestInterfaceSecureContext> {
    CORE_EXPORT static TestInterfaceSecureContext* NativeValue(v8::Isolate*, v8::Local<v8::Value>, ExceptionState&);
  };
  
  template <>
  struct V8TypeOf<TestInterfaceSecureContext> {
    typedef V8TestInterfaceSecureContext Type;
  };
  
  }  // namespace blink
  
  #endif  // V8TestInterfaceSecureContext_h
  