Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.basex.query.xpath.func
Class Func

    java.lang.Object
      org.basex.query.ExprInfo
          org.basex.query.xpath.expr.Expr
              org.basex.query.xpath.func.Func

Direct Known Subclasses:
  BooleanFunc, Ceiling, Concat, Contains, ContainsLC, Count, Distinct, Doc, EndsWith, False, Floor, Id, Lang, Last, LocalName, Matches, Name, NamespaceURI, Nodes, NormalizeSpace, Not, NumFunc, Position, Random, Round, Sort, StartsWith, StringFunc, StringLength, SubStr, SubstringAfter, SubstringBefore, Sum, Translate, True

    public abstract class Func

extends Expr

Interface for XPath functions.

Author:
  Workgroup DBIS, University of Konstanz 2005-08, ISC License, Tim Petrowsky

Field Summary
`java.lang.String` | `desc` Function description.

Constructor Summary
`Func(Expr[] arg, java.lang.String dsc)` Function constructor.

Method Summary
`abstract boolean` | `checkArguments()` Checks validity/number of arguments.
`Expr` | `comp(XPContext ctx)` Optimizes the expression.
`Item[]` | `evalArgs(XPContext ctx)` Evaluates the arguments.
`void` | `plan(Serializer ser)` Recursively sends the abstract syntax of this expression to the specified serializer.
`java.lang.String` | `toString()`
`boolean` | `usesPos()` Checks whether this Expression (or its children) make use of the position parameter.
`boolean` | `usesSize()` Checks whether this Expression (or its children) make use of the setsize parameter.

Methods inherited from class org.basex.query.xpath.expr.Expr
`eval, indexEquivalent, indexSizes, returnedValue, sameAs`

Methods inherited from class org.basex.query.ExprInfo
`color, info, name`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### desc

    public final java.lang.String desc

  Function description.

Constructor Detail

### Func

    public Func(Expr[] arg,
                java.lang.String dsc)

  Function constructor.

  Parameters:
    `arg` - arguments
    `dsc` - expected function pattern

Method Detail

### evalArgs

    public final Item[] evalArgs(XPContext ctx)
                          throws QueryException

  Evaluates the arguments.

  Parameters:
    `ctx` - query context
  Returns:
    xpath values
  Throws:
    `QueryException` - evaluation exception

### checkArguments

    public abstract boolean checkArguments()

  Checks validity/number of arguments.

  Returns:
    result of comparison

### usesSize

    public boolean usesSize()

  Description copied from class: `Expr`
  Checks whether this Expression (or its children) make use of the setsize parameter. If not this allows early predicate evaluation.

  Specified by:
    `usesSize` in class `Expr`
  Returns:
    whether setsize is used

### usesPos

    public boolean usesPos()

  Description copied from class: `Expr`
  Checks whether this Expression (or its children) make use of the position parameter. If not this allows some nice optimizations.

  Specified by:
    `usesPos` in class `Expr`
  Returns:
    whether position is used

### comp

    public Expr comp(XPContext ctx)
              throws QueryException

  Description copied from class: `Expr`
  Optimizes the expression.

  Specified by:
    `comp` in class `Expr`
  Parameters:
    `ctx` - expression context
  Returns:
    optimized Expression
  Throws:
    `QueryException` - evaluation exception

### toString

    public final java.lang.String toString()

  Specified by:
    `toString` in class `ExprInfo`

### plan

    public final void plan(Serializer ser)
                    throws java.io.IOException

  Description copied from class: `ExprInfo`
  Recursively sends the abstract syntax of this expression to the specified serializer.

  Specified by:
    `plan` in class `ExprInfo`
  Parameters:
    `ser` - serializer
  Throws:
    `java.io.IOException` - exception

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD