Qizx/Open v0.4

net.xfra.qizxopen.xquery
Class Value.Empty

java.lang.Object
  |
  +--net.xfra.qizxopen.xquery.dt.BaseValue
        |
        +--net.xfra.qizxopen.xquery.Value.Empty
All Implemented Interfaces:
Item, Value
Enclosing class:
Value

public static class Value.Empty
extends net.xfra.qizxopen.xquery.dt.BaseValue

The empty sequence.


Nested Class Summary
 
Nested classes inherited from class net.xfra.qizxopen.xquery.Value
Value.Empty
 
Field Summary
 
Fields inherited from interface net.xfra.qizxopen.xquery.Value
empty
 
Fields inherited from interface net.xfra.qizxopen.xquery.Item
INCOMPARABLE
 
Constructor Summary
Value.Empty()
           
 
Method Summary
 Item asAtom()
          Gets the current item with atomization.
 Item asItem()
          Gets the current item (undefined result if end of sequence reached).
 Value bornAgain()
          Returns a new version of the sequence in its initial state.
 int compareTo(Item that, java.text.Collator c, int implicitTimeZone)
          Compares two items.
 ItemType getType()
          Returns the type description.
 boolean isNode()
          Tests whether the item is a Node.
 boolean next()
          Attempts to get the next atomic item.
 
Methods inherited from class net.xfra.qizxopen.xquery.dt.BaseValue
asBoolean, asDecimal, asDouble, asFloat, asInteger, asNode, asString, deepEqual, nextCollection, quickCount, setLazy, worthExpanding
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Value.Empty

public Value.Empty()
Method Detail

getType

public ItemType getType()
Description copied from interface: Item
Returns the type description.

Specified by:
getType in interface Item
Overrides:
getType in class net.xfra.qizxopen.xquery.dt.BaseValue

next

public boolean next()
Description copied from interface: Value
Attempts to get the next atomic item. If true is returned, the item value is available through one of the specialized accessors.


bornAgain

public Value bornAgain()
Description copied from interface: Value
Returns a new version of the sequence in its initial state. Value objects are in principle immutable, but due to the iterative implementation style (see the Value.next() method), this is not actually true. Therefore when a value is used several times (in particular the value of a variable), there is a need for "regeneration".

NOTE: this needs not be a deep copy, because only the state of the iterator is concerned, not the underlying data.


isNode

public boolean isNode()
Description copied from interface: Item
Tests whether the item is a Node.

Specified by:
isNode in interface Item
Overrides:
isNode in class net.xfra.qizxopen.xquery.dt.BaseValue

asItem

public Item asItem()
            throws TypeException
Description copied from interface: Value
Gets the current item (undefined result if end of sequence reached).

TypeException

asAtom

public Item asAtom()
            throws TypeException
Description copied from interface: Value
Gets the current item with atomization. If the current item is a Node, it is transparently transformed into a sequence of atomic values (in the future non Basic implementation), or simply to its string value (XQ Basic).

Specified by:
asAtom in interface Value
Overrides:
asAtom in class net.xfra.qizxopen.xquery.dt.BaseValue
TypeException

compareTo

public int compareTo(Item that,
                     java.text.Collator c,
                     int implicitTimeZone)
Description copied from interface: Item
Compares two items. if items are equal, returns 0, if no order is defined, or items are of different nature, returns INCOMPARABLE, if this < that return -1, if this > that return 1.

Specified by:
compareTo in interface Item
Overrides:
compareTo in class net.xfra.qizxopen.xquery.dt.BaseValue

 Copyright Xavier FRANC 2003-2004