Class NativeArrayBuffer
java.lang.Object
org.htmlunit.corejs.javascript.ScriptableObject
org.htmlunit.corejs.javascript.IdScriptableObject
org.htmlunit.corejs.javascript.typedarrays.NativeArrayBuffer
- All Implemented Interfaces:
Serializable,ConstProperties,DebuggableObject,IdFunctionCall,Scriptable,SymbolScriptable
A NativeArrayBuffer is the backing buffer for a typed array. Used inside JavaScript code, it
implements the ArrayBuffer interface. Used directly from Java, it simply holds a byte array.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.htmlunit.corejs.javascript.ScriptableObject
ScriptableObject.KeyComparator -
Field Summary
FieldsModifier and TypeFieldDescription(package private) final byte[]static final Stringprivate static final intprivate static final byte[]private static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final longFields inherited from class org.htmlunit.corejs.javascript.ScriptableObject
CONST, DONTENUM, EMPTY, PERMANENT, READONLY, UNINITIALIZED_CONSTFields inherited from interface org.htmlunit.corejs.javascript.Scriptable
NOT_FOUND -
Constructor Summary
ConstructorsConstructorDescriptionCreate an empty buffer.NativeArrayBuffer(double len) Create a buffer of the specified length in bytes. -
Method Summary
Modifier and TypeMethodDescriptionexecIdCall(IdFunctionObject f, Context cx, Scriptable scope, Scriptable thisObj, Object[] args) 'thisObj' will be null if invoked as constructor, in which case * instance of Scriptable should be returned.protected voidprotected intMap name to id of instance property.protected intbyte[]Return the actual bytes that back the buffer.Return the name of the class.protected StringgetInstanceIdName(int id) Map id back to property name it defines.protected ObjectgetInstanceIdValue(int id) Get id value.intGet the number of bytes in the buffer.protected intGet maximum id findInstanceIdInfo can generate.static voidinit(Context cx, Scriptable scope, boolean sealed) protected voidinitPrototypeId(int id) private static booleanprivate static NativeArrayBufferrealThis(Scriptable thisObj, IdFunctionObject f) slice(double s, double e) Return a new buffer that represents a slice of this buffer's content, starting at position "start" and ending at position "end".Methods inherited from class org.htmlunit.corejs.javascript.IdScriptableObject
activatePrototypeMap, addIdFunctionProperty, defaultGet, defaultHas, defaultPut, defineOwnProperty, delete, delete, ensureType, exportAsJSClass, findInstanceIdInfo, findPrototypeId, get, get, getAttributes, getAttributes, getOwnPropertyDescriptor, has, has, hasPrototypeMap, initPrototypeConstructor, initPrototypeMethod, initPrototypeMethod, initPrototypeMethod, initPrototypeValue, initPrototypeValue, instanceIdInfo, put, put, setAttributes, setInstanceIdAttributes, setInstanceIdValueMethods inherited from class org.htmlunit.corejs.javascript.ScriptableObject
applyDescriptorToAttributeBitset, associateValue, avoidObjectDetection, buildDataDescriptor, callMethod, callMethod, checkPropertyChange, checkPropertyDefinition, defineClass, defineClass, defineClass, defineConst, defineConstProperty, defineFunctionProperties, defineOwnProperties, defineOwnProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, delete, deleteProperty, deleteProperty, deleteProperty, ensureScriptable, ensureScriptableObject, ensureSymbolScriptable, equivalentValues, get, get, getAllIds, getArrayPrototype, getAssociatedValue, getAttributes, getAttributes, getAttributes, getClassPrototype, getDefaultValue, getDefaultValue, getExternalArrayData, getExternalArrayLength, getFunctionPrototype, getGeneratorFunctionPrototype, getGetterOrSetter, getGetterOrSetter, getIds, getObjectPrototype, getParentScope, getProperty, getProperty, getProperty, getPropertyIds, getPrototype, getTopLevelScope, getTopScopeValue, getTypedProperty, getTypedProperty, getTypeOf, has, hasInstance, hasProperty, hasProperty, hasProperty, isAccessorDescriptor, isConst, isDataDescriptor, isEmpty, isExtensible, isFalse, isGenericDescriptor, isGetterOrSetter, isSealed, isTrue, preventExtensions, put, putConst, putConstProperty, putProperty, putProperty, putProperty, querySlot, redefineProperty, sameValue, sealObject, setAttributes, setAttributes, setAttributes, setAttributes, setCommonDescriptorProperties, setExternalArrayData, setGetterOrSetter, setParentScope, setPrototype, size
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
CLASS_NAME
- See Also:
-
EMPTY_BUF
private static final byte[] EMPTY_BUF -
buffer
final byte[] buffer -
Id_constructor
private static final int Id_constructor- See Also:
-
Id_slice
private static final int Id_slice- See Also:
-
MAX_PROTOTYPE_ID
private static final int MAX_PROTOTYPE_ID- See Also:
-
ConstructorId_isView
private static final int ConstructorId_isView- See Also:
-
Id_byteLength
private static final int Id_byteLength- See Also:
-
MAX_INSTANCE_ID
private static final int MAX_INSTANCE_ID- See Also:
-
-
Constructor Details
-
NativeArrayBuffer
public NativeArrayBuffer()Create an empty buffer. -
NativeArrayBuffer
public NativeArrayBuffer(double len) Create a buffer of the specified length in bytes.
-
-
Method Details
-
getClassName
Description copied from class:ScriptableObjectReturn the name of the class.This is typically the same name as the constructor. Classes extending ScriptableObject must implement this abstract method.
- Specified by:
getClassNamein interfaceScriptable- Specified by:
getClassNamein classScriptableObject
-
init
-
getLength
public int getLength()Get the number of bytes in the buffer. -
getBuffer
public byte[] getBuffer()Return the actual bytes that back the buffer. This is a reference to the real buffer, so changes to bytes here will be reflected in the actual object and all its views. -
slice
Return a new buffer that represents a slice of this buffer's content, starting at position "start" and ending at position "end". Both values will be "clamped" as per the JavaScript spec so that invalid values may be passed and will be adjusted up or down accordingly. This method will return a new buffer that contains a copy of the original buffer. Changes there will not affect the content of the buffer.- Parameters:
s- the position where the new buffer will starte- the position where it will end
-
execIdCall
public Object execIdCall(IdFunctionObject f, Context cx, Scriptable scope, Scriptable thisObj, Object[] args) Description copied from class:IdScriptableObject'thisObj' will be null if invoked as constructor, in which case * instance of Scriptable should be returned.- Specified by:
execIdCallin interfaceIdFunctionCall- Overrides:
execIdCallin classIdScriptableObject
-
realThis
-
isArg
-
initPrototypeId
protected void initPrototypeId(int id) - Overrides:
initPrototypeIdin classIdScriptableObject
-
findPrototypeId
- Overrides:
findPrototypeIdin classIdScriptableObject
-
fillConstructorProperties
- Overrides:
fillConstructorPropertiesin classIdScriptableObject
-
getMaxInstanceId
protected int getMaxInstanceId()Description copied from class:IdScriptableObjectGet maximum id findInstanceIdInfo can generate.- Overrides:
getMaxInstanceIdin classIdScriptableObject
-
getInstanceIdName
Description copied from class:IdScriptableObjectMap id back to property name it defines.- Overrides:
getInstanceIdNamein classIdScriptableObject
-
getInstanceIdValue
Description copied from class:IdScriptableObjectGet id value. * If id value is constant, descendant can call cacheIdValue to store * value in the permanent cache. * Default implementation creates IdFunctionObject instance for given id * and cache its value- Overrides:
getInstanceIdValuein classIdScriptableObject
-
findInstanceIdInfo
Description copied from class:IdScriptableObjectMap name to id of instance property. Should return 0 if not found or the result ofIdScriptableObject.instanceIdInfo(int, int).- Overrides:
findInstanceIdInfoin classIdScriptableObject
-