Class DefaultedArgumentExpression

All Implemented Interfaces:
ExportAgent, Locatable, IdentityComparable, Traceable
Direct Known Subclasses:
DefaultedArgumentExpression.DefaultCollationArgument

public class DefaultedArgumentExpression extends PseudoExpression
DefaultedArgumentExpression is a placeholder used in a function call for an argument that is evaluated using the default value expression from the function definition, in cases where that expression has not yet been compiled (typically because the function call precedes the function declaration). It should be resolved to a real expression during type checking of the function call.
  • Constructor Details

    • DefaultedArgumentExpression

      public DefaultedArgumentExpression()
      Constructor
  • Method Details

    • copy

      public Expression copy(RebindingMap rebindings)
      Copy an expression. This makes a deep copy.
      Specified by:
      copy in class Expression
      Parameters:
      rebindings - variables that need to be re-bound
      Returns:
      the copy of the original expression
    • getExpressionName

      public String getExpressionName()
      Get a name identifying the kind of expression, in terms meaningful to a user.
      Overrides:
      getExpressionName in class Expression
      Returns:
      a name identifying the kind of expression, in terms meaningful to a user. The name will always be in the form of a lexical XML QName, and should match the name used in export() output displaying the expression.
    • export

      public void export(ExpressionPresenter destination) throws XPathException
      Diagnostic print of expression structure. The abstract expression tree is written to the supplied output destination.
      Specified by:
      export in interface ExportAgent
      Specified by:
      export in class Expression
      Parameters:
      destination - the expression presenter used to display the structure
      Throws:
      XPathException - if the export fails, for example if an expression is found that won't work in the target environment.
    • getElaborator

      public Elaborator getElaborator()
      Description copied from class: PseudoExpression
      Make an elaborator for this expression
      Overrides:
      getElaborator in class PseudoExpression
      Returns:
      an appropriate Elaborator