V8 API Reference Guide for node.js v9.9.0
Public Member Functions | Friends | List of all members
v8::Template Class Reference

#include <v8.h>

Inheritance diagram for v8::Template:
Inheritance graph
[legend]
Collaboration diagram for v8::Template:
Collaboration graph
[legend]

Public Member Functions

void Set (Local< Name > name, Local< Data > value, PropertyAttribute attributes=None)
 
void SetPrivate (Local< Private > name, Local< Data > value, PropertyAttribute attributes=None)
 
V8_INLINE void Set (Isolate *isolate, const char *name, Local< Data > value)
 
void SetAccessorProperty (Local< Name > name, Local< FunctionTemplate > getter=Local< FunctionTemplate >(), Local< FunctionTemplate > setter=Local< FunctionTemplate >(), PropertyAttribute attribute=None, AccessControl settings=DEFAULT)
 
void SetNativeDataProperty (Local< String > name, AccessorGetterCallback getter, AccessorSetterCallback setter=0, Local< Value > data=Local< Value >(), PropertyAttribute attribute=None, Local< AccessorSignature > signature=Local< AccessorSignature >(), AccessControl settings=DEFAULT)
 
void SetNativeDataProperty (Local< Name > name, AccessorNameGetterCallback getter, AccessorNameSetterCallback setter=0, Local< Value > data=Local< Value >(), PropertyAttribute attribute=None, Local< AccessorSignature > signature=Local< AccessorSignature >(), AccessControl settings=DEFAULT)
 
void SetLazyDataProperty (Local< Name > name, AccessorNameGetterCallback getter, Local< Value > data=Local< Value >(), PropertyAttribute attribute=None)
 
void SetIntrinsicDataProperty (Local< Name > name, Intrinsic intrinsic, PropertyAttribute attribute=None)
 

Friends

class ObjectTemplate
 
class FunctionTemplate
 

Detailed Description

The superclass of object and function templates.

Member Function Documentation

void v8::Template::Set ( Local< Name name,
Local< Data value,
PropertyAttribute  attributes = None 
)

Adds a property to each instance created by this template.

The property must be defined either as a primitive value, or a template.

void v8::Template::SetIntrinsicDataProperty ( Local< Name name,
Intrinsic  intrinsic,
PropertyAttribute  attribute = None 
)

During template instantiation, sets the value with the intrinsic property from the correct context.

void v8::Template::SetLazyDataProperty ( Local< Name name,
AccessorNameGetterCallback  getter,
Local< Value data = LocalValue >(),
PropertyAttribute  attribute = None 
)

Like SetNativeDataProperty, but V8 will replace the native data property with a real data property on first access.

void v8::Template::SetNativeDataProperty ( Local< String name,
AccessorGetterCallback  getter,
AccessorSetterCallback  setter = 0,
Local< Value data = LocalValue >(),
PropertyAttribute  attribute = None,
Local< AccessorSignature signature = LocalAccessorSignature >(),
AccessControl  settings = DEFAULT 
)

Whenever the property with the given name is accessed on objects created from this Template the getter and setter callbacks are called instead of getting and setting the property directly on the JavaScript object.

Parameters
nameThe name of the property for which an accessor is added.
getterThe callback to invoke when getting the property.
setterThe callback to invoke when setting the property.
dataA piece of data that will be passed to the getter and setter callbacks whenever they are invoked.
settingsAccess control settings for the accessor. This is a bit field consisting of one of more of DEFAULT = 0, ALL_CAN_READ = 1, or ALL_CAN_WRITE = 2. The default is to not allow cross-context access. ALL_CAN_READ means that all cross-context reads are allowed. ALL_CAN_WRITE means that all cross-context writes are allowed. The combination ALL_CAN_READ | ALL_CAN_WRITE can be used to allow all cross-context access.
attributeThe attributes of the property for which an accessor is added.
signatureThe signature describes valid receivers for the accessor and is used to perform implicit instance checks against them. If the receiver is incompatible (i.e. is not an instance of the constructor as defined by FunctionTemplate::HasInstance()), an implicit TypeError is thrown and no callback is invoked.

The documentation for this class was generated from the following file: