Class NativeRegExp

  • All Implemented Interfaces:
    java.io.Serializable, Callable, ConstProperties, DebuggableObject, Function, IdFunctionCall, Scriptable

    public class NativeRegExp
    extends IdScriptableObject
    implements Function
    This class implements the RegExp native object. Revision History: Implementation in C by Brendan Eich Initial port to Java by Norris Boyd from jsregexp.c version 1.36 Merged up to version 1.38, which included Unicode support. Merged bug fixes in version 1.39. Merged JSFUN13_BRANCH changes up to 1.32.2.13
    Author:
    Brendan Eich, Norris Boyd
    See Also:
    Serialized Form
    • 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 interface Scriptable
        Specified by:
        getClassName in class ScriptableObject
      • call

        public java.lang.Object call​(Context cx,
                                     Scriptable scope,
                                     Scriptable thisObj,
                                     java.lang.Object[] args)
        Description copied from interface: Function
        Call the function. Note that the array of arguments is not guaranteed to have length greater than 0.
        Specified by:
        call in interface Callable
        Specified by:
        call in interface Function
        Parameters:
        cx - the current Context for this thread
        scope - 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 JavaScript this object
        args - the array of arguments
        Returns:
        the result of the call
      • construct

        public Scriptable construct​(Context cx,
                                    Scriptable scope,
                                    java.lang.Object[] args)
        Description copied from interface: Function
        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 interface Function
        Parameters:
        cx - the current Context for this thread
        scope - an enclosing scope of the caller except when the function is called from a closure.
        args - the array of arguments
        Returns:
        the allocated object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • 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 class IdScriptableObject
      • setInstanceIdValue

        protected void setInstanceIdValue​(int id,
                                          java.lang.Object value)
        Description copied from class: IdScriptableObject
        Set or delete id value. If value == NOT_FOUND , the implementation should make sure that the following getInstanceIdValue return NOT_FOUND.
        Overrides:
        setInstanceIdValue in class IdScriptableObject
      • setInstanceIdAttributes

        protected void setInstanceIdAttributes​(int id,
                                               int attr)
        Description copied from class: IdScriptableObject
        Update the attributes of the given instance property. Classes which want to support changing property attributes via Object.defineProperty must override this method. The default implementation throws InternalError.
        Overrides:
        setInstanceIdAttributes in class IdScriptableObject
        Parameters:
        id - the instance property id
        attr - the new attribute bitset