# Class TCefv8ValueRef

Description
Hierarchy
Fields
Methods
Properties

## Unit

uCEFv8Value

## Declaration

`type TCefv8ValueRef = class(TCefBaseRefCountedRef, ICefv8Value)`

## Description

This item has no description.

## Hierarchy

- TInterfacedObject
- TCefBaseRefCountedRef
- TCefv8ValueRef

## Overview

### Methods

| `function IsValid: Boolean;`
| `function IsUndefined: Boolean;`
| `function IsNull: Boolean;`
| `function IsBool: Boolean;`
| `function IsInt: Boolean;`
| `function IsUInt: Boolean;`
| `function IsDouble: Boolean;`
| `function IsDate: Boolean;`
| `function IsString: Boolean;`
| `function IsObject: Boolean;`
| `function IsArray: Boolean;`
| `function IsArrayBuffer: Boolean;`
| `function IsFunction: Boolean;`
| `function IsPromise: Boolean;`
| `function IsSame(const that: ICefv8Value): Boolean;`
| `function GetBoolValue: Boolean;`
| `function GetIntValue: Integer;`
| `function GetUIntValue: Cardinal;`
| `function GetDoubleValue: Double;`
| `function GetDateValue: TDateTime;`
| `function GetStringValue: ustring;`
| `function IsUserCreated: Boolean;`
| `function HasException: Boolean;`
| `function GetException: ICefV8Exception;`
| `function ClearException: Boolean;`
| `function WillRethrowExceptions: Boolean;`
| `function SetRethrowExceptions(rethrow: Boolean): Boolean;`
| `function HasValueByKey(const key: ustring): Boolean;`
| `function HasValueByIndex(index: Integer): Boolean;`
| `function DeleteValueByKey(const key: ustring): Boolean;`
| `function DeleteValueByIndex(index: Integer): Boolean;`
| `function GetValueByKey(const key: ustring): ICefv8Value;`
| `function GetValueByIndex(index: Integer): ICefv8Value;`
| `function SetValueByKey(const key: ustring; const value: ICefv8Value; attribute: TCefV8PropertyAttributes): Boolean;`
| `function SetValueByIndex(index: Integer; const value: ICefv8Value): Boolean;`
| `function SetValueByAccessor(const key: ustring; attribute: TCefV8PropertyAttributes): Boolean;`
| `function GetKeys(const keys: TStrings): Integer;`
| `function SetUserData(const data: ICefv8Value): Boolean;`
| `function GetUserData: ICefv8Value;`
| `function GetExternallyAllocatedMemory: Integer;`
| `function AdjustExternallyAllocatedMemory(changeInBytes: Integer): Integer;`
| `function GetArrayLength: Integer;`
| `function GetArrayBufferReleaseCallback: ICefv8ArrayBufferReleaseCallback;`
| `function NeuterArrayBuffer: boolean;`
| `function GetArrayBufferByteLength: NativeUInt;`
| `function GetArrayBufferData: Pointer;`
| `function GetFunctionName: ustring;`
| `function GetFunctionHandler: ICefv8Handler;`
| `function ExecuteFunction(const obj: ICefv8Value; const arguments: TCefv8ValueArray): ICefv8Value;`
| `function ExecuteFunctionWithContext(const context: ICefv8Context; const obj: ICefv8Value; const arguments: TCefv8ValueArray): ICefv8Value;`
| `function ResolvePromise(const arg: ICefv8Value): boolean;`
| `function RejectPromise(const errorMsg: ustring): boolean;`
| `class function UnWrap(data: Pointer): ICefv8Value;`
| `class function NewUndefined: ICefv8Value;`
| `class function NewNull: ICefv8Value;`
| `class function NewBool(value: Boolean): ICefv8Value;`
| `class function NewInt(value: Integer): ICefv8Value;`
| `class function NewUInt(value: Cardinal): ICefv8Value;`
| `class function NewDouble(value: Double): ICefv8Value;`
| `class function NewDate(value: TDateTime): ICefv8Value;`
| `class function NewString(const str: ustring): ICefv8Value;`
| `class function NewObject(const Accessor: ICefV8Accessor; const Interceptor: ICefV8Interceptor): ICefv8Value;`
| `class function NewObjectProc(const getter : TCefV8AccessorGetterProc; const setter : TCefV8AccessorSetterProc; const getterbyname : TCefV8InterceptorGetterByNameProc; const setterbyname : TCefV8InterceptorSetterByNameProc; const getterbyindex : TCefV8InterceptorGetterByIndexProc; const setterbyindex : TCefV8InterceptorSetterByIndexProc): ICefv8Value;`
| `class function NewArray(len: Integer): ICefv8Value;`
| `class function NewArrayBuffer(buffer: Pointer; length: NativeUInt; const callback : ICefv8ArrayBufferReleaseCallback): ICefv8Value;`
| `class function NewArrayBufferWithCopy(buffer: Pointer; length: NativeUInt): ICefv8Value;`
| `class function NewFunction(const name: ustring; const handler: ICefv8Handler): ICefv8Value;`
| `class function NewPromise: ICefv8Value;`

## Description

### Methods

| `function IsValid: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsValid. Returns true (1) if the underlying handle is valid and it can be accessed on the current thread. Do not call any other functions if this function returns false (0).

| `function IsUndefined: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsUndefined. True if the value type is undefined.

| `function IsNull: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsNull. True if the value type is null.

| `function IsBool: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsBool. True if the value type is bool.

| `function IsInt: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsInt. True if the value type is int.

| `function IsUInt: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsUInt. True if the value type is unsigned int.

| `function IsDouble: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsDouble. True if the value type is double.

| `function IsDate: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsDate. True if the value type is Date.

| `function IsString: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsString. True if the value type is string.

| `function IsObject: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsObject. True if the value type is object.

| `function IsArray: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsArray. True if the value type is array.

| `function IsArrayBuffer: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsArrayBuffer. True if the value type is an ArrayBuffer.

| `function IsFunction: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsFunction. True if the value type is function.

| `function IsPromise: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsPromise. True if the value type is a Promise.

| `function IsSame(const that: ICefv8Value): Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsSame. Returns true (1) if this object is pointing to the same handle as |that| object.

| `function GetBoolValue: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.GetBoolValue. Return a bool value.

| `function GetIntValue: Integer;`
This item has no description. Showing description inherited from ICefv8Value.GetIntValue. Return an int value.

| `function GetUIntValue: Cardinal;`
This item has no description. Showing description inherited from ICefv8Value.GetUIntValue. Return an unsigned int value.

| `function GetDoubleValue: Double;`
This item has no description. Showing description inherited from ICefv8Value.GetDoubleValue. Return a double value.

| `function GetDateValue: TDateTime;`
This item has no description. Showing description inherited from ICefv8Value.GetDateValue. Return a Date value.

| `function GetStringValue: ustring;`
This item has no description. Showing description inherited from ICefv8Value.GetStringValue. Return a string value.

| `function IsUserCreated: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.IsUserCreated. Returns true (1) if this is a user created object.

| `function HasException: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.HasException. Returns true (1) if the last function call resulted in an exception. This attribute exists only in the scope of the current CEF value object.

| `function GetException: ICefV8Exception;`
This item has no description. Showing description inherited from ICefv8Value.GetException. Returns the exception resulting from the last function call. This attribute exists only in the scope of the current CEF value object.

| `function ClearException: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.ClearException. Clears the last exception and returns true (1) on success.

| `function WillRethrowExceptions: Boolean;`
This item has no description. Showing description inherited from ICefv8Value.WillRethrowExceptions. Returns true (1) if this object will re-throw future exceptions. This attribute exists only in the scope of the current CEF value object.

| `function SetRethrowExceptions(rethrow: Boolean): Boolean;`
This item has no description. Showing description inherited from ICefv8Value.SetRethrowExceptions. Set whether this object will re-throw future exceptions. By default exceptions are not re-thrown. If a exception is re-thrown the current context should not be accessed again until after the exception has been caught and not re-thrown. Returns true (1) on success. This attribute exists only in the scope of the current CEF value object.

| `function HasValueByKey(const key: ustring): Boolean;`
This item has no description. Showing description inherited from ICefv8Value.HasValueByKey. Returns true (1) if the object has a value with the specified identifier.

| `function HasValueByIndex(index: Integer): Boolean;`
This item has no description. Showing description inherited from ICefv8Value.HasValueByIndex. Returns true (1) if the object has a value with the specified identifier.

| `function DeleteValueByKey(const key: ustring): Boolean;`
This item has no description. Showing description inherited from ICefv8Value.DeleteValueByKey. Deletes the value with the specified identifier and returns true (1) on success. Returns false (0) if this function is called incorrectly or an exception is thrown. For read-only and don't-delete values this function will return true (1) even though deletion failed.

| `function DeleteValueByIndex(index: Integer): Boolean;`
This item has no description. Showing description inherited from ICefv8Value.DeleteValueByIndex. Deletes the value with the specified identifier and returns true (1) on success. Returns false (0) if this function is called incorrectly, deletion fails or an exception is thrown. For read-only and don't-delete values this function will return true (1) even though deletion failed.

| `function GetValueByKey(const key: ustring): ICefv8Value;`
This item has no description. Showing description inherited from ICefv8Value.GetValueByKey. Returns the value with the specified identifier on success. Returns NULL if this function is called incorrectly or an exception is thrown.

| `function GetValueByIndex(index: Integer): ICefv8Value;`
This item has no description. Showing description inherited from ICefv8Value.GetValueByIndex. Returns the value with the specified identifier on success. Returns NULL if this function is called incorrectly or an exception is thrown.

| `function SetValueByKey(const key: ustring; const value: ICefv8Value; attribute: TCefV8PropertyAttributes): Boolean;`
This item has no description. Showing description inherited from ICefv8Value.SetValueByKey. Associates a value with the specified identifier and returns true (1) on success. Returns false (0) if this function is called incorrectly or an exception is thrown. For read-only values this function will return true (1) even though assignment failed.

| `function SetValueByIndex(index: Integer; const value: ICefv8Value): Boolean;`
This item has no description. Showing description inherited from ICefv8Value.SetValueByIndex. Associates a value with the specified identifier and returns true (1) on success. Returns false (0) if this function is called incorrectly or an exception is thrown. For read-only values this function will return true (1) even though assignment failed.

| `function SetValueByAccessor(const key: ustring; attribute: TCefV8PropertyAttributes): Boolean;`
This item has no description. Showing description inherited from ICefv8Value.SetValueByAccessor. Registers an identifier and returns true (1) on success. Access to the identifier will be forwarded to the ICefV8Accessor instance passed to cef_v8value_create_object(). Returns false (0) if this function is called incorrectly or an exception is thrown. For read-only values this function will return true (1) even though assignment failed.

| `function GetKeys(const keys: TStrings): Integer;`
This item has no description. Showing description inherited from ICefv8Value.GetKeys. Read the keys for the object's values into the specified vector. Integer- based keys will also be returned as strings.

| `function SetUserData(const data: ICefv8Value): Boolean;`
This item has no description. Showing description inherited from ICefv8Value.SetUserData. Sets the user data for this object and returns true (1) on success. Returns false (0) if this function is called incorrectly. This function can only be called on user created objects.

| `function GetUserData: ICefv8Value;`
This item has no description. Showing description inherited from ICefv8Value.GetUserData. Returns the user data, if any, assigned to this object.

| `function GetExternallyAllocatedMemory: Integer;`
This item has no description. Showing description inherited from ICefv8Value.GetExternallyAllocatedMemory. Returns the amount of externally allocated memory registered for the object.

| `function AdjustExternallyAllocatedMemory(changeInBytes: Integer): Integer;`
This item has no description. Showing description inherited from ICefv8Value.AdjustExternallyAllocatedMemory. Adjusts the amount of registered external memory for the object. Used to give V8 an indication of the amount of externally allocated memory that is kept alive by JavaScript objects. V8 uses this information to decide when to perform global garbage collection. Each ICefv8Value tracks the amount of external memory associated with it and automatically decreases the global total by the appropriate amount on its destruction. |change_in_bytes| specifies the number of bytes to adjust by. This function returns the number of bytes associated with the object after the adjustment. This function can only be called on user created objects.

| `function GetArrayLength: Integer;`
This item has no description. Showing description inherited from ICefv8Value.GetArrayLength. Returns the number of elements in the array.

| `function GetArrayBufferReleaseCallback: ICefv8ArrayBufferReleaseCallback;`
This item has no description. Showing description inherited from ICefv8Value.GetArrayBufferReleaseCallback. Returns the ReleaseCallback object associated with the ArrayBuffer or NULL if the ArrayBuffer was not created with CreateArrayBuffer.

| `function NeuterArrayBuffer: boolean;`
This item has no description. Showing description inherited from ICefv8Value.NeuterArrayBuffer. Prevent the ArrayBuffer from using it's memory block by setting the length to zero. This operation cannot be undone. If the ArrayBuffer was created with CreateArrayBuffer then ICefv8ArrayBufferReleaseCallback.ReleaseBuffer will be called to release the underlying buffer.

| `function GetArrayBufferByteLength: NativeUInt;`
This item has no description. Showing description inherited from ICefv8Value.GetArrayBufferByteLength. Returns the length (in bytes) of the ArrayBuffer.

| `function GetArrayBufferData: Pointer;`
This item has no description. Showing description inherited from ICefv8Value.GetArrayBufferData. Returns a pointer to the beginning of the memory block for this ArrayBuffer backing store. The returned pointer is valid as long as the ICefv8value is alive.

| `function GetFunctionName: ustring;`
This item has no description. Showing description inherited from ICefv8Value.GetFunctionName. Returns the function name.

| `function GetFunctionHandler: ICefv8Handler;`
This item has no description. Showing description inherited from ICefv8Value.GetFunctionHandler. Returns the function handler or NULL if not a CEF-created function.

| `function ExecuteFunction(const obj: ICefv8Value; const arguments: TCefv8ValueArray): ICefv8Value;`
This item has no description. Showing description inherited from ICefv8Value.ExecuteFunction. Execute the function using the current V8 context. This function should only be called from within the scope of a ICefv8Handler or ICefV8Accessor callback, or in combination with calling enter() and exit() on a stored ICefv8Context reference. |object| is the receiver ('this' object) of the function. If |object| is NULL the current context's global object will be used. |arguments| is the list of arguments that will be passed to the function. Returns the function return value on success. Returns NULL if this function is called incorrectly or an exception is thrown.

| `function ExecuteFunctionWithContext(const context: ICefv8Context; const obj: ICefv8Value; const arguments: TCefv8ValueArray): ICefv8Value;`
This item has no description. Showing description inherited from ICefv8Value.ExecuteFunctionWithContext. Execute the function using the specified V8 context. |object| is the receiver ('this' object) of the function. If |object| is NULL the specified context's global object will be used. |arguments| is the list of arguments that will be passed to the function. Returns the function return value on success. Returns NULL if this function is called incorrectly or an exception is thrown.

| `function ResolvePromise(const arg: ICefv8Value): boolean;`
This item has no description. Showing description inherited from ICefv8Value.ResolvePromise. Resolve the Promise using the current V8 context. This function should only be called from within the scope of a ICefv8Handler or ICefV8Accessor callback, or in combination with calling enter() and exit() on a stored ICefv8Context reference. |arg| is the argument passed to the resolved promise. Returns true (1) on success. Returns false (0) if this function is called incorrectly or an exception is thrown.

| `function RejectPromise(const errorMsg: ustring): boolean;`
This item has no description. Showing description inherited from ICefv8Value.RejectPromise. Reject the Promise using the current V8 context. This function should only be called from within the scope of a ICefv8Handler or ICefV8Accessor callback, or in combination with calling enter() and exit() on a stored ICefv8Context reference. Returns true (1) on success. Returns false (0) if this function is called incorrectly or an exception is thrown.

| `class function UnWrap(data: Pointer): ICefv8Value;`
Returns a ICefv8Value instance using a PCefv8Value data pointer.

| `class function NewUndefined: ICefv8Value;`
Create a new ICefv8Value object of type undefined.

| `class function NewNull: ICefv8Value;`
Create a new ICefv8Value object of type null.

| `class function NewBool(value: Boolean): ICefv8Value;`
Create a new ICefv8Value object of type bool.

| `class function NewInt(value: Integer): ICefv8Value;`
Create a new ICefv8Value object of type int.

| `class function NewUInt(value: Cardinal): ICefv8Value;`
Create a new ICefv8Value object of type unsigned int.

| `class function NewDouble(value: Double): ICefv8Value;`
Create a new ICefv8Value object of type double.

| `class function NewDate(value: TDateTime): ICefv8Value;`
Create a new ICefv8Value object of type Date. This function should only be called from within the scope of a ICefRenderProcessHandler, ICefv8Handler or ICefv8Accessor callback, or in combination with calling enter() and exit() on a stored ICefv8Context reference.

| `class function NewString(const str: ustring): ICefv8Value;`
Create a new ICefv8Value object of type string.

| `class function NewObject(const Accessor: ICefV8Accessor; const Interceptor: ICefV8Interceptor): ICefv8Value;`
Create a new ICefv8Value object of type object with optional accessor and/or interceptor. This function should only be called from within the scope of a ICefRenderProcessHandler, ICefv8Handler or ICefv8Accessor callback, or in combination with calling enter() and exit() on a stored ICefv8Context reference.

| `class function NewObjectProc(const getter : TCefV8AccessorGetterProc; const setter : TCefV8AccessorSetterProc; const getterbyname : TCefV8InterceptorGetterByNameProc; const setterbyname : TCefV8InterceptorSetterByNameProc; const getterbyindex : TCefV8InterceptorGetterByIndexProc; const setterbyindex : TCefV8InterceptorSetterByIndexProc): ICefv8Value;`
Create a new ICefv8Value object of type object with optional accessor and/or interceptor. This function should only be called from within the scope of a ICefRenderProcessHandler, ICefv8Handler or ICefv8Accessor callback, or in combination with calling enter() and exit() on a stored ICefv8Context reference.

| `class function NewArray(len: Integer): ICefv8Value;`
Create a new ICefv8Value object of type array with the specified |length|. If |length| is negative the returned array will have length 0. This function should only be called from within the scope of a ICefRenderProcessHandler, ICefv8Handler or ICefv8Accessor callback, or in combination with calling enter() and exit() on a stored ICefv8Context reference.

| `class function NewArrayBuffer(buffer: Pointer; length: NativeUInt; const callback : ICefv8ArrayBufferReleaseCallback): ICefv8Value;`
Create a new ICefv8Value object of type ArrayBuffer which wraps the provided |buffer| of size |length| bytes. The ArrayBuffer is externalized, meaning that it does not own |buffer|. The caller is responsible for freeing |buffer| when requested via a call to ICefv8ArrayBufferReleaseCallback.ReleaseBuffer. This function should only be called from within the scope of a ICefRenderProcessHandler, ICefv8Handler or ICefv8Accessor callback, or in combination with calling enter() and exit() on a stored ICefv8Context reference. NOTE: Always returns nullptr when V8 sandbox is enabled.

| `class function NewArrayBufferWithCopy(buffer: Pointer; length: NativeUInt): ICefv8Value;`
Create a new cef_v8value_t object of type ArrayBuffer which copies the provided |buffer| of size |length| bytes. This function should only be called from within the scope of a cef_render_process_handler_t, cef_v8handler_t or cef_v8accessor_t callback, or in combination with calling enter() and exit() on a stored cef_v8context_t reference.

| `class function NewFunction(const name: ustring; const handler: ICefv8Handler): ICefv8Value;`
Create a new ICefv8Value object of type function. This function should only be called from within the scope of a ICefRenderProcessHandler, ICefv8Handler or ICefv8Accessor callback, or in combination with calling enter() and exit() on a stored ICefv8Context reference.

| `class function NewPromise: ICefv8Value;`
Create a new ICefv8Value object of type Promise. This function should only be called from within the scope of a ICefRenderProcessHandler, ICefv8Handler or ICefv8Accessor callback, or in combination with calling enter() and exit() on a stored ICefv8Context reference.

Generated by PasDoc 0.16.0-snapshot.