summaryrefslogtreecommitdiffstats
path: root/webkit/port/bindings/v8/V8NPObject.h
diff options
context:
space:
mode:
authortim@chromium.org <tim@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-03 17:59:15 +0000
committertim@chromium.org <tim@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-03 17:59:15 +0000
commit06f0eae3de48077c12dbe703f1f995427565b1c1 (patch)
tree20eecf38a77ce6c48e2f06e18609b3c9734a297d /webkit/port/bindings/v8/V8NPObject.h
parent070ca2eabe00cf456086f6ebd204bb3289dc2215 (diff)
downloadchromium_src-06f0eae3de48077c12dbe703f1f995427565b1c1.zip
chromium_src-06f0eae3de48077c12dbe703f1f995427565b1c1.tar.gz
chromium_src-06f0eae3de48077c12dbe703f1f995427565b1c1.tar.bz2
Prepare V8NPObject.h/cpp for upstreaming.
Review URL: http://codereview.chromium.org/115972 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17496 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/port/bindings/v8/V8NPObject.h')
-rw-r--r--webkit/port/bindings/v8/V8NPObject.h85
1 files changed, 55 insertions, 30 deletions
diff --git a/webkit/port/bindings/v8/V8NPObject.h b/webkit/port/bindings/v8/V8NPObject.h
index c236c60..607cb0c 100644
--- a/webkit/port/bindings/v8/V8NPObject.h
+++ b/webkit/port/bindings/v8/V8NPObject.h
@@ -1,38 +1,63 @@
-// Copyright (c) 2006-2008 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.
+/*
+ * Copyright (C) 2006, 2007, 2008, 2009 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
-#ifndef v8_npobject_h
-#define v8_npobject_h
+#ifndef V8NPObject_h
+#define V8NPObject_h
#include <v8.h>
#include "third_party/npapi/bindings/npruntime.h"
+// FIXME: Remove these #defines when upstreamed. They are needed to compile
+// some currently upstreamed files which will need to be modified when this
+// file is upstreamed.
+#define NPObjectGetNamedProperty npObjectGetNamedProperty
+#define NPObjectSetNamedProperty npObjectSetNamedProperty
+#define NPObjectInvokeDefaultHandler npObjectInvokeDefaultHandler
+#define NPObjectGetIndexedProperty npObjectGetIndexedProperty
+#define NPObjectSetIndexedProperty npObjectSetIndexedProperty
+#define CreateV8ObjectForNPObject createV8ObjectForNPObject
+
// These functions can be replaced by normal JS operation.
// Getters
-v8::Handle<v8::Value> NPObjectNamedPropertyGetter(v8::Local<v8::String> name,
- const v8::AccessorInfo& info);
-v8::Handle<v8::Value> NPObjectIndexedPropertyGetter(uint32_t index,
- const v8::AccessorInfo& info);
-v8::Handle<v8::Value> NPObjectGetNamedProperty(v8::Local<v8::Object> self,
- v8::Local<v8::String> name);
-v8::Handle<v8::Value> NPObjectGetIndexedProperty(v8::Local<v8::Object> self,
- uint32_t index);
+v8::Handle<v8::Value> npObjectNamedPropertyGetter(v8::Local<v8::String> name, const v8::AccessorInfo&);
+v8::Handle<v8::Value> npObjectIndexedPropertyGetter(uint32_t index, const v8::AccessorInfo&);
+v8::Handle<v8::Value> npObjectGetNamedProperty(v8::Local<v8::Object> self, v8::Local<v8::String> name);
+v8::Handle<v8::Value> npObjectGetIndexedProperty(v8::Local<v8::Object> self, uint32_t index);
// Setters
-v8::Handle<v8::Value> NPObjectNamedPropertySetter(v8::Local<v8::String> name,
- v8::Local<v8::Value> value,
- const v8::AccessorInfo& info);
-v8::Handle<v8::Value> NPObjectIndexedPropertySetter(uint32_t index,
- const v8::AccessorInfo& info);
-v8::Handle<v8::Value> NPObjectSetNamedProperty(v8::Local<v8::Object> self,
- v8::Local<v8::String> name,
- v8::Local<v8::Value> value);
-v8::Handle<v8::Value> NPObjectSetIndexedProperty(v8::Local<v8::Object> self,
- uint32_t index,
- v8::Local<v8::Value> value);
-
-v8::Handle<v8::Value> NPObjectInvokeDefaultHandler(const v8::Arguments& args);
+v8::Handle<v8::Value> npObjectNamedPropertySetter(v8::Local<v8::String> name, v8::Local<v8::Value>, const v8::AccessorInfo&);
+v8::Handle<v8::Value> npObjectIndexedPropertySetter(uint32_t index, const v8::AccessorInfo&);
+v8::Handle<v8::Value> npObjectSetNamedProperty(v8::Local<v8::Object> self, v8::Local<v8::String> name, v8::Local<v8::Value>);
+v8::Handle<v8::Value> npObjectSetIndexedProperty(v8::Local<v8::Object> self, uint32_t index, v8::Local<v8::Value>);
+
+v8::Handle<v8::Value> npObjectInvokeDefaultHandler(const v8::Arguments&);
// Get a wrapper for a NPObject.
// If the object is already wrapped, the pre-existing wrapper
@@ -40,14 +65,14 @@ v8::Handle<v8::Value> NPObjectInvokeDefaultHandler(const v8::Arguments& args);
// If the object is not wrapped, wrap it, and give V8 a weak
// reference to the wrapper which will cleanup when there are
// no more JS references to the object.
-v8::Local<v8::Object> CreateV8ObjectForNPObject(NPObject* object, NPObject *root);
+v8::Local<v8::Object> createV8ObjectForNPObject(NPObject*, NPObject* root);
// Tell V8 to forcibly remove an object.
// This is used at plugin teardown so that the caller can
-// aggressively unload the plugin library. After calling this
+// aggressively unload the plugin library. After calling this
// function, the persistent handle to the wrapper will be
// gone, and the wrapped NPObject will be removed so that
// it cannot be referred to.
-void ForgetV8ObjectForNPObject(NPObject*object);
+void forgetV8ObjectForNPObject(NPObject*);
-#endif // v8_npobject_h
+#endif // V8NPObject_h