| Index: include/v8.h
|
| diff --git a/include/v8.h b/include/v8.h
|
| index 83da77b3d145f2b3532c366306d5ff063da17805..ce5eff642ad06b36e2c8473aa4fefd4bffe0f696 100644
|
| --- a/include/v8.h
|
| +++ b/include/v8.h
|
| @@ -3259,6 +3259,7 @@ class PropertyCallbackInfo {
|
|
|
| typedef void (*FunctionCallback)(const FunctionCallbackInfo<Value>& info);
|
|
|
| +enum class ConstructorBehavior { kThrow, kAllow };
|
|
|
| /**
|
| * A JavaScript function object (ECMA-262, 15.3).
|
| @@ -3269,10 +3270,10 @@ class V8_EXPORT Function : public Object {
|
| * Create a function in the current execution context
|
| * for a given FunctionCallback.
|
| */
|
| - static MaybeLocal<Function> New(Local<Context> context,
|
| - FunctionCallback callback,
|
| - Local<Value> data = Local<Value>(),
|
| - int length = 0);
|
| + static MaybeLocal<Function> New(
|
| + Local<Context> context, FunctionCallback callback,
|
| + Local<Value> data = Local<Value>(), int length = 0,
|
| + ConstructorBehavior behavior = ConstructorBehavior::kAllow);
|
| static V8_DEPRECATE_SOON(
|
| "Use maybe version",
|
| Local<Function> New(Isolate* isolate, FunctionCallback callback,
|
| @@ -4493,7 +4494,8 @@ class V8_EXPORT FunctionTemplate : public Template {
|
| static Local<FunctionTemplate> New(
|
| Isolate* isolate, FunctionCallback callback = 0,
|
| Local<Value> data = Local<Value>(),
|
| - Local<Signature> signature = Local<Signature>(), int length = 0);
|
| + Local<Signature> signature = Local<Signature>(), int length = 0,
|
| + ConstructorBehavior behavior = ConstructorBehavior::kAllow);
|
|
|
| /** Get a template included in the snapshot by index. */
|
| static MaybeLocal<FunctionTemplate> FromSnapshot(Isolate* isolate,
|
|
|