Class NativeArrayBuffer
- java.lang.Object
-
- org.mozilla.javascript.ScriptableObject
-
- org.mozilla.javascript.IdScriptableObject
-
- org.mozilla.javascript.typedarrays.NativeArrayBuffer
-
- All Implemented Interfaces:
java.io.Serializable
,ConstProperties
,DebuggableObject
,IdFunctionCall
,Scriptable
,SymbolScriptable
public class NativeArrayBuffer extends IdScriptableObject
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:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.mozilla.javascript.ScriptableObject
ScriptableObject.KeyComparator
-
-
Field Summary
Fields Modifier and Type Field Description (package private) byte[]
buffer
static java.lang.String
CLASS_NAME
private static int
ConstructorId_isView
private static byte[]
EMPTY_BUF
private static int
Id_byteLength
private static int
Id_constructor
private static int
Id_slice
private static int
MAX_INSTANCE_ID
private static int
MAX_PROTOTYPE_ID
private static long
serialVersionUID
-
Fields inherited from class org.mozilla.javascript.ScriptableObject
CONST, DONTENUM, EMPTY, PERMANENT, READONLY, UNINITIALIZED_CONST
-
Fields inherited from interface org.mozilla.javascript.Scriptable
NOT_FOUND
-
-
Constructor Summary
Constructors Constructor Description NativeArrayBuffer()
Create an empty buffer.NativeArrayBuffer(double len)
Create a buffer of the specified length in bytes.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
execIdCall(IdFunctionObject f, Context cx, Scriptable scope, Scriptable thisObj, java.lang.Object[] args)
'thisObj' will be null if invoked as constructor, in which case * instance of Scriptable should be returned.protected void
fillConstructorProperties(IdFunctionObject ctor)
protected int
findInstanceIdInfo(java.lang.String s)
Map name to id of instance property.protected int
findPrototypeId(java.lang.String s)
byte[]
getBuffer()
Return the actual bytes that back the buffer.java.lang.String
getClassName()
Return the name of the class.protected java.lang.String
getInstanceIdName(int id)
Map id back to property name it defines.protected java.lang.Object
getInstanceIdValue(int id)
Get id value.int
getLength()
Get the number of bytes in the buffer.protected int
getMaxInstanceId()
Get maximum id findInstanceIdInfo can generate.static void
init(Context cx, Scriptable scope, boolean sealed)
protected void
initPrototypeId(int id)
private static boolean
isArg(java.lang.Object[] args, int i)
private static NativeArrayBuffer
realThis(Scriptable thisObj, IdFunctionObject f)
NativeArrayBuffer
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.mozilla.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, setInstanceIdValue
-
Methods inherited from class org.mozilla.javascript.ScriptableObject
applyDescriptorToAttributeBitset, associateValue, avoidObjectDetection, buildDataDescriptor, callMethod, callMethod, checkPropertyChange, checkPropertyDefinition, defineClass, defineClass, defineClass, defineConst, defineConstProperty, defineFunctionProperties, defineOwnProperties, defineOwnProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, delete, 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 Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
CLASS_NAME
public static final java.lang.String CLASS_NAME
- See Also:
- Constant Field Values
-
EMPTY_BUF
private static final byte[] EMPTY_BUF
-
buffer
final byte[] buffer
-
Id_constructor
private static final int Id_constructor
- See Also:
- Constant Field Values
-
Id_slice
private static final int Id_slice
- See Also:
- Constant Field Values
-
MAX_PROTOTYPE_ID
private static final int MAX_PROTOTYPE_ID
- See Also:
- Constant Field Values
-
ConstructorId_isView
private static final int ConstructorId_isView
- See Also:
- Constant Field Values
-
Id_byteLength
private static final int Id_byteLength
- See Also:
- Constant Field Values
-
MAX_INSTANCE_ID
private static final int MAX_INSTANCE_ID
- See Also:
- Constant Field Values
-
-
Method Detail
-
getClassName
public java.lang.String getClassName()
Description copied from class:ScriptableObject
Return the name of the class.This is typically the same name as the constructor. Classes extending ScriptableObject must implement this abstract method.
- Specified by:
getClassName
in interfaceScriptable
- Specified by:
getClassName
in classScriptableObject
-
init
public static void init(Context cx, Scriptable scope, boolean sealed)
-
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
public NativeArrayBuffer 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". 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 java.lang.Object execIdCall(IdFunctionObject f, Context cx, Scriptable scope, Scriptable thisObj, java.lang.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:
execIdCall
in interfaceIdFunctionCall
- Overrides:
execIdCall
in classIdScriptableObject
-
realThis
private static NativeArrayBuffer realThis(Scriptable thisObj, IdFunctionObject f)
-
isArg
private static boolean isArg(java.lang.Object[] args, int i)
-
initPrototypeId
protected void initPrototypeId(int id)
- Overrides:
initPrototypeId
in classIdScriptableObject
-
findPrototypeId
protected int findPrototypeId(java.lang.String s)
- Overrides:
findPrototypeId
in classIdScriptableObject
-
fillConstructorProperties
protected void fillConstructorProperties(IdFunctionObject ctor)
- Overrides:
fillConstructorProperties
in classIdScriptableObject
-
getMaxInstanceId
protected int getMaxInstanceId()
Description copied from class:IdScriptableObject
Get maximum id findInstanceIdInfo can generate.- Overrides:
getMaxInstanceId
in classIdScriptableObject
-
getInstanceIdName
protected java.lang.String getInstanceIdName(int id)
Description copied from class:IdScriptableObject
Map id back to property name it defines.- Overrides:
getInstanceIdName
in classIdScriptableObject
-
getInstanceIdValue
protected java.lang.Object getInstanceIdValue(int id)
Description copied from class:IdScriptableObject
Get 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:
getInstanceIdValue
in classIdScriptableObject
-
findInstanceIdInfo
protected int findInstanceIdInfo(java.lang.String s)
Description copied from class:IdScriptableObject
Map name to id of instance property. Should return 0 if not found or the result ofIdScriptableObject.instanceIdInfo(int, int)
.- Overrides:
findInstanceIdInfo
in classIdScriptableObject
-
-