Class Concat

All Implemented Interfaces:
Serializable, SourceLocator, LocationProvider, SaxonLocator, InstructionInfo, Locator

public class Concat extends SystemFunction
Implementation of the fn:concat() function
See Also:
  • Constructor Details

    • Concat

      public Concat()
  • Method Details

    • getRequiredType

      protected SequenceType getRequiredType(int arg)
      Get the required type of the nth argument
      Overrides:
      getRequiredType in class SystemFunction
      Parameters:
      arg - the number of the argument whose type is requested, zero-based
      Returns:
      the required type of the argument as defined in the function signature
    • evaluateAsString

      public CharSequence evaluateAsString(XPathContext c) throws XPathException
      Evaluate the function in a string context
      Overrides:
      evaluateAsString in class Expression
      Parameters:
      c - The context in which the expression is to be evaluated
      Returns:
      the value of the expression, evaluated in the current context. The expression must return a string or (); if the value of the expression is (), this method returns "".
      Throws:
      XPathException - if any dynamic error occurs evaluating the expression
    • evaluateItem

      public Item evaluateItem(XPathContext c) throws XPathException
      Evaluate in a general context
      Overrides:
      evaluateItem in class Expression
      Parameters:
      c - 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
    • process

      public void process(XPathContext context) throws XPathException
      Process the instruction in push mode. This avoids constructing the concatenated string in memory, instead each argument can be sent straight to the serializer.
      Overrides:
      process in class Expression
      Parameters:
      context - The dynamic context, giving access to the current node, the current variables, etc.
      Throws:
      XPathException - if a dynamic error occurs