com.ihr.xbrl.om.formula.functions

## Class XFFunctionMultiArguments

- java.lang.Object
- - net.sf.saxon.expr.Expression
  - - net.sf.saxon.expr.FunctionCall
    - - com.ihr.xbrl.om.formula.functions.XFFunction
      - - com.ihr.xbrl.om.formula.functions.XFFunctionMultiArguments

- All Implemented Interfaces:
    java.io.Serializable, javax.xml.transform.SourceLocator, net.sf.saxon.event.LocationProvider, net.sf.saxon.event.SaxonLocator, net.sf.saxon.trace.InstructionInfo, org.xml.sax.Locator
  Direct Known Subclasses:
    XFI_concept_relationships, XFI_distinct_nonAbstract_parent_concepts, XFI_format_number

      public abstract class XFFunctionMultiArguments
      extends XFFunction

  The Class XFFunctionMultiArguments.
  Author:
    Ignacio
  See Also:
    Serialized Form

- - ### Field Summary

    - ### Fields inherited from class net.sf.saxon.expr.Expression

      `EFFECTIVE_BOOLEAN_VALUE, EVALUATE_METHOD, EVENT_FEED_METHOD, ITEM_FEED_METHOD, ITERATE_METHOD, MAX_SEQUENCE_LENGTH, MAX_STRING_LENGTH, PROCESS_METHOD, PUSH_SELECTION, UNBOUNDED_LOWER, UNBOUNDED_UPPER, WATCH_METHOD`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `XFFunctionMultiArguments()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract void` | `checkArguments(net.sf.saxon.expr.parser.ExpressionVisitor visitor)` Method called during static type checking.
    `java.util.Iterator<net.sf.saxon.expr.Expression>` | `iterateSubExpressions()`
    `net.sf.saxon.expr.Expression` | `preEvaluate(net.sf.saxon.expr.parser.ExpressionVisitor visitor)`
    `void` | `setArguments(net.sf.saxon.expr.Expression[] args)` Method called by the expression parser when all arguments have been supplied.
    `net.sf.saxon.expr.Expression` | `simplify(net.sf.saxon.expr.parser.ExpressionVisitor visitor)` Simplify the function call.
    `net.sf.saxon.expr.Expression` | `typeCheck(net.sf.saxon.expr.parser.ExpressionVisitor visitor, net.sf.saxon.expr.parser.ExpressionVisitor.ContextItemType contextItemType)`

    - ### Methods inherited from class com.ihr.xbrl.om.formula.functions.XFFunction

      `addDocToPathMap, computeCardinality, computeSpecialProperties, copy, getDetails, getErrorCodeForTypeErrors, getFormulaProcessor, getItemType, makeSystemFunction, optimize, setDetails, setFormulaProcessor`

    - ### Methods inherited from class net.sf.saxon.expr.FunctionCall

      `addExternalFunctionCallToPathMap, equals, explain, getArguments, getDisplayName, getExpressionName, getFunctionName, getNumberOfArguments, hashCode, promote, replaceSubExpression, setFunctionName, toString`

    - ### Methods inherited from class net.sf.saxon.expr.Expression

      `addToPathMap, adoptChildExpression, checkForUpdatingSubexpressions, checkPermittedContents, computeDependencies, computeStaticProperties, doPromotion, effectiveBooleanValue, evaluateAsString, evaluateItem, evaluatePendingUpdates, explain, getCardinality, getColumnNumber, getColumnNumber, getConstructType, getContainer, getDependencies, getEvaluationMethod, getExecutable, getHostLanguage, getImplementationMethod, getIntegerBounds, getIntrinsicDependencies, getLineNumber, getLineNumber, getLocationId, getLocationProvider, getObjectName, getProperties, getProperty, getPublicId, getSlotsUsed, getSpecialProperties, getSystemId, getSystemId, hasLoopingSubexpression, hasVariableBinding, implementsStaticTypeCheck, isSubtreeExpression, isUpdatingExpression, isVacuousExpression, iterate, iterateEvents, iterateSameFocusSubExpressions, markTailFunctionCalls, process, resetLocalStaticProperties, setContainer, setEvaluationMethod, setFiltered, setFlattened, setLocationId, staticTypeCheck, suppressValidation`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### XFFunctionMultiArguments

          public XFFunctionMultiArguments()

  - ### Method Detail

    - #### setArguments

          public void setArguments(net.sf.saxon.expr.Expression[] args)

      Method called by the expression parser when all arguments have been supplied.
      Overrides:
        `setArguments` in class `net.sf.saxon.expr.FunctionCall`
      Parameters:
        `args` - the expressions contained in the argument list of the function call

    - #### iterateSubExpressions

          public java.util.Iterator<net.sf.saxon.expr.Expression> iterateSubExpressions()

      Overrides:
        `iterateSubExpressions` in class `net.sf.saxon.expr.FunctionCall`

    - #### simplify

          public net.sf.saxon.expr.Expression simplify(net.sf.saxon.expr.parser.ExpressionVisitor visitor)
                                                throws net.sf.saxon.trans.XPathException

      Simplify the function call. Default method is to simplify each of the supplied arguments and evaluate the function if all are now known.
      Overrides:
        `simplify` in class `net.sf.saxon.expr.FunctionCall`
      Parameters:
        `visitor` - an expression visitor
      Returns:
        the expression
      Throws:
        `net.sf.saxon.trans.XPathException` - the x path exception

    - #### typeCheck

          public net.sf.saxon.expr.Expression typeCheck(net.sf.saxon.expr.parser.ExpressionVisitor visitor,
                                               net.sf.saxon.expr.parser.ExpressionVisitor.ContextItemType contextItemType)
                                                 throws net.sf.saxon.trans.XPathException

      Overrides:
        `typeCheck` in class `net.sf.saxon.expr.FunctionCall`
      Throws:
        `net.sf.saxon.trans.XPathException`

    - #### checkArguments

          public abstract void checkArguments(net.sf.saxon.expr.parser.ExpressionVisitor visitor)
                                       throws net.sf.saxon.trans.XPathException

      Description copied from class: `XFFunction`
      Method called during static type checking.
      Overrides:
        `checkArguments` in class `XFFunction`
      Parameters:
        `visitor` - the visitor
      Throws:
        `net.sf.saxon.trans.XPathException` - the x path exception

    - #### preEvaluate

          public net.sf.saxon.expr.Expression preEvaluate(net.sf.saxon.expr.parser.ExpressionVisitor visitor)
                                                   throws net.sf.saxon.trans.XPathException

      Overrides:
        `preEvaluate` in class `net.sf.saxon.expr.FunctionCall`
      Throws:
        `net.sf.saxon.trans.XPathException`