org.mozilla.javascript.xml
Class XMLObject

java.lang.Object
  extended by org.mozilla.javascript.ScriptableObject
      extended by org.mozilla.javascript.IdScriptableObject
          extended by org.mozilla.javascript.xml.XMLObject
All Implemented Interfaces:
java.io.Serializable, ConstProperties, DebuggableObject, IdFunctionCall, Scriptable

public abstract class XMLObject
extends IdScriptableObject

This Interface describes what all XML objects (XML, XMLList) should have in common.

See Also:
Serialized Form

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
XMLObject()
           
XMLObject(Scriptable scope, Scriptable prototype)
           
 
Method Summary
 java.lang.Object addValues(Context cx, boolean thisIsLeft, java.lang.Object value)
          Custom + operator.
abstract  boolean delete(Context cx, java.lang.Object id)
          Implementation of ECMAScript [[Delete]].
abstract  NativeWith enterDotQuery(Scriptable scope)
          Wrap this object into NativeWith to implement the .() query.
abstract  NativeWith enterWith(Scriptable scope)
          Wrap this object into NativeWith to implement the with statement.
abstract  java.lang.Object get(Context cx, java.lang.Object id)
          Implementation of ECMAScript [[Get]].
abstract  Scriptable getExtraMethodSource(Context cx)
          Return an additional object to look for methods that runtime should consider during method search.
abstract  java.lang.Object getFunctionProperty(Context cx, int id)
           
abstract  java.lang.Object getFunctionProperty(Context cx, java.lang.String name)
           
 java.lang.String getTypeOf()
          Gets the value returned by calling the typeof operator on this object.
abstract  boolean has(Context cx, java.lang.Object id)
          Implementation of ECMAScript [[Has]].
abstract  Ref memberRef(Context cx, java.lang.Object elem, int memberTypeFlags)
          Generic reference to implement x.@y, x..y etc.
abstract  Ref memberRef(Context cx, java.lang.Object namespace, java.lang.Object elem, int memberTypeFlags)
          Generic reference to implement x::ns, x.@ns::y, x..@ns::y etc.
abstract  void put(Context cx, java.lang.Object id, java.lang.Object value)
          Implementation of ECMAScript [[Put]].
 
Methods inherited from class org.mozilla.javascript.IdScriptableObject
activatePrototypeMap, addIdFunctionProperty, defaultGet, defaultPut, defineOwnProperty, delete, execIdCall, exportAsJSClass, fillConstructorProperties, findInstanceIdInfo, findPrototypeId, get, getAttributes, getInstanceIdName, getInstanceIdValue, getMaxInstanceId, getOwnPropertyDescriptor, has, hasPrototypeMap, incompatibleCallError, initPrototypeConstructor, initPrototypeId, initPrototypeMethod, initPrototypeValue, instanceIdInfo, 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, delete, deleteProperty, deleteProperty, ensureScriptable, ensureScriptableObject, equivalentValues, get, get, getAllIds, getArrayPrototype, getAssociatedValue, getAttributes, getAttributes, getAttributes, getClassName, getClassPrototype, getDefaultValue, getDefaultValue, getFunctionPrototype, getGetterOrSetter, getIds, getObjectPrototype, getParentScope, getProperty, getProperty, getPropertyIds, getPrototype, getSlot, getTopLevelScope, getTopScopeValue, getTypedProperty, getTypedProperty, has, hasInstance, hasProperty, hasProperty, isAccessorDescriptor, isConst, isDataDescriptor, isEmpty, isExtensible, isFalse, isGenericDescriptor, isGetterOrSetter, isSealed, isTrue, preventExtensions, put, putConst, putConstProperty, putProperty, putProperty, redefineProperty, sameValue, sealObject, setAttributes, setAttributes, setAttributes, setGetterOrSetter, setParentScope, setPrototype, size
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XMLObject

public XMLObject()

XMLObject

public XMLObject(Scriptable scope,
                 Scriptable prototype)
Method Detail

has

public abstract boolean has(Context cx,
                            java.lang.Object id)
Implementation of ECMAScript [[Has]].


get

public abstract java.lang.Object get(Context cx,
                                     java.lang.Object id)
Implementation of ECMAScript [[Get]].


put

public abstract void put(Context cx,
                         java.lang.Object id,
                         java.lang.Object value)
Implementation of ECMAScript [[Put]].


delete

public abstract boolean delete(Context cx,
                               java.lang.Object id)
Implementation of ECMAScript [[Delete]].


getFunctionProperty

public abstract java.lang.Object getFunctionProperty(Context cx,
                                                     java.lang.String name)

getFunctionProperty

public abstract java.lang.Object getFunctionProperty(Context cx,
                                                     int id)

getExtraMethodSource

public abstract Scriptable getExtraMethodSource(Context cx)
Return an additional object to look for methods that runtime should consider during method search. Return null if no such object available.


memberRef

public abstract Ref memberRef(Context cx,
                              java.lang.Object elem,
                              int memberTypeFlags)
Generic reference to implement x.@y, x..y etc.


memberRef

public abstract Ref memberRef(Context cx,
                              java.lang.Object namespace,
                              java.lang.Object elem,
                              int memberTypeFlags)
Generic reference to implement x::ns, x.@ns::y, x..@ns::y etc.


enterWith

public abstract NativeWith enterWith(Scriptable scope)
Wrap this object into NativeWith to implement the with statement.


enterDotQuery

public abstract NativeWith enterDotQuery(Scriptable scope)
Wrap this object into NativeWith to implement the .() query.


addValues

public java.lang.Object addValues(Context cx,
                                  boolean thisIsLeft,
                                  java.lang.Object value)
Custom + operator. Should return Scriptable.NOT_FOUND if this object does not have custom addition operator for the given value, or the result of the addition operation.

The default implementation returns Scriptable.NOT_FOUND to indicate no custom addition operation.

Parameters:
cx - the Context object associated with the current thread.
thisIsLeft - if true, the object should calculate this + value if false, the object should calculate value + this.
value - the second argument for addition operation.

getTypeOf

public java.lang.String getTypeOf()
Gets the value returned by calling the typeof operator on this object.

Overrides:
getTypeOf in class ScriptableObject
Returns:
"xml" or "undefined" if ScriptableObject.avoidObjectDetection() returns true
See Also:
ScriptableObject.getTypeOf()