Class ArrayMember

  • All Implemented Interfaces:
    Callable, Function, GroundedValue, Item, Sequence

    public class ArrayMember
    extends SystemFunction
    This class implements the saxon:array-member() extension function. It wraps the supplied argument (which can be any sequence) as an ArrayMemberValue. An ArrayMemberValue is an external object that contains an arbitrary sequence; its significance is that when it appears in the input to an array constructor, the sequence becomes a single member of the array rather than being flattened. As such it provides an intermediate object that is invaluable during the construction of nested arrays.
    • Constructor Detail

      • ArrayMember

        public ArrayMember()
    • Method Detail

      • call

        public ArrayMemberValue call​(XPathContext context,
                                     Sequence[] arguments)
                              throws XPathException
        Evaluate this function call at run-time
        Parameters:
        context - The XPath dynamic evaluation context
        arguments - The values of the arguments to the function call. Each argument value (which is in general a sequence) is supplied in the form of an iterator over the items in the sequence. If required, the supplied sequence can be materialized by calling, for example, new SequenceExtent(arguments[i]). If the argument is always a singleton, then the single item may be obtained by calling arguments[i].next(). The implementation is not obliged to read all the items in each SequenceIterator if they are not required to compute the result; but if any SequenceIterator is not read to completion, it is good practice to call its close() method.
        Returns:
        an iterator over the results of the function. If the result is a single item, it can be returned in the form of a SingletonIterator. If the result is an empty sequence, the method should return EmptyIterator.getInstance()
        Throws:
        XPathException - if a dynamic error occurs during evaluation of the function. The Saxon run-time code will add information about the error location.