Package org.loboevolution.js
Class JavaConstructorObject
java.lang.Object
org.mozilla.javascript.ScriptableObject
org.loboevolution.js.JavaConstructorObject
- All Implemented Interfaces:
Serializable
,Callable
,ConstProperties
,Constructable
,DebuggableObject
,Function
,Scriptable
,SymbolScriptable
JavaConstructorObject class.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.mozilla.javascript.ScriptableObject
ScriptableObject.KeyComparator
-
Field Summary
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
ConstructorDescriptionJavaConstructorObject
(String name, JavaClassWrapper classWrapper) Constructor for JavaConstructorObject.JavaConstructorObject
(String name, JavaClassWrapper classWrapper, JavaInstantiator instantiator) Constructor for JavaConstructorObject. -
Method Summary
Modifier and TypeMethodDescriptioncall
(Context cx, Scriptable scope, Scriptable thisObj, Object[] args) Call the function.construct
(Context cx, Scriptable scope, Object[] args) Call the function as a constructor.Return the name of the class.getDefaultValue
(Class<?> hint) Implements the [[DefaultValue]] internal method.Methods inherited from class org.mozilla.javascript.ScriptableObject
applyDescriptorToAttributeBitset, associateValue, avoidObjectDetection, buildDataDescriptor, callMethod, callMethod, checkPropertyChange, checkPropertyDefinition, defineClass, defineClass, defineClass, defineConst, defineConstProperty, defineFunctionProperties, defineOwnProperties, defineOwnProperty, defineOwnProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, delete, delete, delete, deleteProperty, deleteProperty, ensureScriptable, ensureScriptableObject, ensureSymbolScriptable, equivalentValues, get, get, get, get, getAllIds, getArrayPrototype, getAssociatedValue, getAttributes, getAttributes, getAttributes, getAttributes, getAttributes, getClassPrototype, getDefaultValue, getExternalArrayData, getExternalArrayLength, getFunctionPrototype, getGeneratorFunctionPrototype, getGetterOrSetter, getGetterOrSetter, getIds, getObjectPrototype, getOwnPropertyDescriptor, getParentScope, getProperty, getProperty, getProperty, getPropertyIds, getPrototype, getTopLevelScope, getTopScopeValue, getTypedProperty, getTypedProperty, getTypeOf, has, has, has, hasInstance, hasProperty, hasProperty, hasProperty, isAccessorDescriptor, isConst, isDataDescriptor, isEmpty, isExtensible, isFalse, isGenericDescriptor, isGetterOrSetter, isSealed, isTrue, preventExtensions, put, put, put, putConst, putConstProperty, putProperty, putProperty, putProperty, querySlot, redefineProperty, sameValue, sealObject, setAttributes, setAttributes, setAttributes, setAttributes, setAttributes, setCommonDescriptorProperties, setExternalArrayData, setGetterOrSetter, setParentScope, setPrototype, size
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.mozilla.javascript.Scriptable
delete, delete, get, get, getIds, getParentScope, getPrototype, has, has, hasInstance, put, put, setParentScope, setPrototype
-
Constructor Details
-
JavaConstructorObject
Constructor for JavaConstructorObject.
- Parameters:
name
- aString
object.classWrapper
- aJavaClassWrapper
object.
-
JavaConstructorObject
public JavaConstructorObject(String name, JavaClassWrapper classWrapper, JavaInstantiator instantiator) Constructor for JavaConstructorObject.
- Parameters:
name
- aString
object.classWrapper
- aJavaClassWrapper
object.instantiator
- aJavaInstantiator
object.
-
-
Method Details
-
call
Call the function.Note that the array of arguments is not guaranteed to have length greater than 0.
- Specified by:
call
in interfaceCallable
- Specified by:
call
in interfaceFunction
- Parameters:
cx
- the current Context for this threadscope
- the scope to execute the function relative to. This is set to the value returned by getParentScope() except when the function is called from a closure.thisObj
- the JavaScriptthis
objectargs
- the array of arguments- Returns:
- the result of the call
-
construct
Call the function as a constructor.This method is invoked by the runtime in order to satisfy a use of the JavaScript
new
operator. This method is expected to create a new object and return it.- Specified by:
construct
in interfaceConstructable
- Specified by:
construct
in interfaceFunction
- Parameters:
cx
- the current Context for this threadscope
- an enclosing scope of the caller except when the function is called from a closure.args
- the array of arguments- Returns:
- the allocated object
-
getClassName
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
-
getDefaultValue
Implements the [[DefaultValue]] internal method.Note that the toPrimitive conversion is a no-op for every type other than Object, for which [[DefaultValue]] is called. See ECMA 9.1.
A
hint
of null means "no hint".- Specified by:
getDefaultValue
in interfaceScriptable
- Overrides:
getDefaultValue
in classScriptableObject
- Parameters:
hint
- the type hint- Returns:
- the default value for the object
See ECMA 8.6.2.6.
-