## net.sf.saxon.value
Class EmptySequence

    java.lang.Object
      net.sf.saxon.value.Value
          net.sf.saxon.value.EmptySequence

All Implemented Interfaces:
  java.io.Serializable, SequenceIterable, GroundedValue, ValueRepresentation

    public final class EmptySequence

extends Value
implements GroundedValue

An EmptySequence object represents a sequence containing no members.

See Also:
  Serialized Form

Field Summary

Fields inherited from class net.sf.saxon.value.Value
`EMPTY_CLASS_ARRAY, INDETERMINATE_ORDERING`

Fields inherited from interface net.sf.saxon.om.ValueRepresentation
`EMPTY_VALUE_ARRAY`

Method Summary
`Item` `asItem()` Return the value in the form of an Item
`boolean` `effectiveBooleanValue()` Get the effective boolean value - always false
`boolean` `equals(java.lang.Object other)` Is this expression the same as another expression?
`int` `getCardinality()` Determine the static cardinality
`static EmptySequence` `getInstance()` Get the implicit instance of this class
`ItemType` `getItemType(TypeHierarchy th)` Determine the item type
`int` `getLength()` Get the length of the sequence
`int` `hashCode()`
`Item` `itemAt(int n)` Get the n'th item in the sequence (starting from 0).
`SequenceIterator` `iterate()` Return an iteration over the sequence
`GroundedValue` `subsequence(int min, int length)` Get a subsequence of the value

Methods inherited from class net.sf.saxon.value.Value
`asItem, asIterator, asValue, checkPermittedContents, convertToJava, fromItem, getCanonicalLexicalRepresentation, getIterator, getSchemaComparable, getStringValue, getStringValueCS, iterate, makeQNameValue, process, reduce, stringToNumber, toString`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface net.sf.saxon.om.ValueRepresentation
`getStringValue, getStringValueCS`

Method Detail

### getInstance

    public static EmptySequence getInstance()

  Get the implicit instance of this class

### iterate

    public SequenceIterator iterate()

  Return an iteration over the sequence

  Specified by:
    `iterate` in class `Value`
  Returns:
    an iterator over the sequence of items

### asItem

    public Item asItem()

  Return the value in the form of an Item

  Overrides:
    `asItem` in class `Value`
  Returns:
    the value in the form of an Item

### getItemType

    public ItemType getItemType(TypeHierarchy th)

  Determine the item type

  Overrides:
    `getItemType` in class `Value`
  Parameters:
    `th` - the type hierarchy cache
  Returns:
    for the default implementation: AnyItemType (not known)

### getCardinality

    public int getCardinality()

  Determine the static cardinality

  Overrides:
    `getCardinality` in class `Value`
  Returns:
    the cardinality

### getLength

    public final int getLength()

  Get the length of the sequence

  Overrides:
    `getLength` in class `Value`
  Returns:
    always 0 for an empty sequence

### equals

    public boolean equals(java.lang.Object other)

  Is this expression the same as another expression?

  Overrides:
    `equals` in class `Value`
  Throws:
    `java.lang.ClassCastException` - if the values are not comparable

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `java.lang.Object`

### effectiveBooleanValue

    public boolean effectiveBooleanValue()

  Get the effective boolean value - always false

  Overrides:
    `effectiveBooleanValue` in class `Value`
  Returns:
    the effective boolean value

### itemAt

    public Item itemAt(int n)

  Get the n'th item in the sequence (starting from 0). This is defined for all Values, but its real benefits come for a sequence Value stored extensionally (or for a MemoClosure, once all the values have been read)

  Specified by:
    `itemAt` in interface `GroundedValue`
  Overrides:
    `itemAt` in class `Value`
  Parameters:
    `n` - position of the required item, counting from zero.
  Returns:
    the n'th item in the sequence, where the first item in the sequence is numbered zero. If n is negative or >= the length of the sequence, returns null.

### subsequence

    public GroundedValue subsequence(int min,
                                     int length)

  Get a subsequence of the value

  Specified by:
    `subsequence` in interface `GroundedValue`
  Parameters:
    `min` - the index of the first item to be included in the result, counting from zero. A negative value is taken as zero. If the value is beyond the end of the sequence, an empty sequence is returned
    `length` - the number of items to be included in the result. Specify Integer.MAX_VALUE to get the subsequence up to the end of the base sequence. If the value is negative, an empty sequence is returned. If the value goes off the end of the sequence, the result returns items up to the end of the sequence
  Returns:
    the required subsequence. If min is

Copyright (c) Saxonica Limited. All rights reserved.