org.yaml.snakeyaml.nodes
Class Node

java.lang.Object
  extended by org.yaml.snakeyaml.nodes.Node
Direct Known Subclasses:
AnchorNode, CollectionNode, ScalarNode

public abstract class Node
extends Object

Base class for all nodes.

The nodes form the node-graph described in the YAML Specification.

While loading, the node graph is usually created by the Composer, and later transformed into application specific Java classes by the classes from the org.yaml.snakeyaml.constructor package.


Field Summary
protected  Mark endMark
           
protected  boolean resolved
          true when the tag is assigned by the resolver
protected  Boolean useClassConstructor
           
 
Constructor Summary
Node(Tag tag, Mark startMark, Mark endMark)
           
 
Method Summary
 boolean equals(Object obj)
          Two Nodes are never equal.
 Mark getEndMark()
           
abstract  NodeId getNodeId()
          For error reporting.
 Mark getStartMark()
           
 Tag getTag()
          Tag of this node.
 Class<? extends Object> getType()
           
 int hashCode()
           
 boolean isResolved()
          Indicates if the tag was added by Resolver.
 boolean isTwoStepsConstruction()
          Indicates if this node must be constructed in two steps.
 void setTag(Tag tag)
           
 void setTwoStepsConstruction(boolean twoStepsConstruction)
           
 void setType(Class<? extends Object> type)
           
 void setUseClassConstructor(Boolean useClassConstructor)
           
 boolean useClassConstructor()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

endMark

protected Mark endMark

resolved

protected boolean resolved
true when the tag is assigned by the resolver


useClassConstructor

protected Boolean useClassConstructor
Constructor Detail

Node

public Node(Tag tag,
            Mark startMark,
            Mark endMark)
Method Detail

getTag

public Tag getTag()
Tag of this node.

Every node has a tag assigned. The tag is either local or global.

Returns:
Tag of this node.

getEndMark

public Mark getEndMark()

getNodeId

public abstract NodeId getNodeId()
For error reporting.

Returns:
scalar, sequence, mapping
See Also:
"class variable 'id' in PyYAML"

getStartMark

public Mark getStartMark()

setTag

public void setTag(Tag tag)

equals

public final boolean equals(Object obj)
Two Nodes are never equal.

Overrides:
equals in class Object

getType

public Class<? extends Object> getType()

setType

public void setType(Class<? extends Object> type)

setTwoStepsConstruction

public void setTwoStepsConstruction(boolean twoStepsConstruction)

isTwoStepsConstruction

public boolean isTwoStepsConstruction()
Indicates if this node must be constructed in two steps.

Two-step construction is required whenever a node is a child (direct or indirect) of it self. That is, if a recursive structure is build using anchors and aliases.

Set by Composer, used during the construction process.

Only relevant during loading.

Returns:
true if the node is self referenced.

hashCode

public final int hashCode()
Overrides:
hashCode in class Object

useClassConstructor

public boolean useClassConstructor()

setUseClassConstructor

public void setUseClassConstructor(Boolean useClassConstructor)

isResolved

public boolean isResolved()
Indicates if the tag was added by Resolver.

Returns:
true if the tag of this node was resolved


Copyright © 2008-2013. All Rights Reserved.