Class Copy

    • Constructor Detail

      • Copy

        public Copy​(boolean copyNamespaces,
                    boolean inheritNamespaces,
                    SchemaType schemaType,
                    int validation)
    • Method Detail

      • simplify

        public Expression simplify​(StaticContext env)
                            throws XPathException
        Simplify an expression. This performs any static optimization (by rewriting the expression as a different expression). The default implementation does nothing.
        Specified by:
        simplify in interface Expression
        Overrides:
        simplify in class ParentNodeConstructor
        Parameters:
        env - the static context
        Returns:
        the simplified expression
        Throws:
        XPathException - if an error is discovered during expression rewriting
      • getInstructionNameCode

        public int getInstructionNameCode()
        Get the name of this instruction for diagnostic and tracing purposes
        Overrides:
        getInstructionNameCode in class Instruction
      • getNewBaseURI

        public java.lang.String getNewBaseURI​(XPathContext context)
        Get the base URI of a copied element node (the base URI is retained in the new copy)
        Specified by:
        getNewBaseURI in class ElementCreator
        Parameters:
        context -
        Returns:
        the base URI
      • getActiveNamespaces

        public int[] getActiveNamespaces()
                                  throws XPathException
        Callback to get a list of the intrinsic namespaces that need to be generated for the element. The result is an array of namespace codes, the codes either occupy the whole array or are terminated by a -1 entry. A result of null is equivalent to a zero-length array.
        Overrides:
        getActiveNamespaces in class ElementCreator
        Throws:
        XPathException
      • processLeavingTail

        public TailCall processLeavingTail​(XPathContext context)
                                    throws XPathException
        Description copied from class: ElementCreator
        Evaluate the instruction to produce a new element node. This method is typically used when there is a parent element or document in a result tree, to which the new element is added.
        Specified by:
        processLeavingTail in interface TailCallReturner
        Overrides:
        processLeavingTail in class ElementCreator
        Parameters:
        context - The dynamic context of the transformation, giving access to the current node, the current variables, etc.
        Returns:
        null (this instruction never returns a tail call)
        Throws:
        XPathException
      • evaluateItem

        public Item evaluateItem​(XPathContext context)
                          throws XPathException
        Evaluate as an expression. We rely on the fact that when these instructions are generated by XQuery, there will always be a valueExpression to evaluate the content
        Specified by:
        evaluateItem in interface Expression
        Overrides:
        evaluateItem in class ElementCreator
        Parameters:
        context - The context in which the expression is to be evaluated
        Returns:
        the node or atomic value that results from evaluating the expression; or null to indicate that the result is an empty sequence
        Throws:
        XPathException - if any dynamic error occurs evaluating the expression
      • display

        public void display​(int level,
                            java.io.PrintStream out,
                            Configuration config)
        Diagnostic print of expression structure. The expression is written to the System.err output stream
        Parameters:
        level - indentation level for this expression
        out -
        config -