クラス TopLevelClass.Default.LabelOrNode

java.lang.Object
  |
  +--TopLevelClass.Default.Node
        |
        +--TopLevelClass.Default.LabelOrNode
すべての実装インタフェース:
List/Node, TopLevelClass.Node
含まれているクラス:
TopLevelClass.Default

public static class TopLevelClass.Default.LabelOrNode
extends TopLevelClass.Default.Node
implements List/Node

LabelOrNode の実装。

このクラスは、TypeDefinition で定義される、$abstractではない非終端記号 Type に対して出力されます。また、このクラスを出力させる TypeDefinitionsupertypes に列挙される最初の TypeName に対しても同様のクラスが出力されます。

このクラスは、$abstractTypeDefinition に対しては abstract になります。そうでない場合、abstract ではなくなります。

このクラスは、supertypes が存在しない場合 TopLevelClass.Default.Node のサブクラスになります。そうでない場合、supertypes の最初の TypeName と同じ名前の TopLevelClass.Default のネストしたクラスのサブクラスになります。

導入されたバージョン:
notavaCC 1.0

フィールドの概要
static int ID
          この型の ID 値。
 
コンストラクタの概要
TopLevelClass.Default.LabelOrNode(List/Node source)
          source.getChildNodes()source.
TopLevelClass.Default.LabelOrNode(TopLevelClass.NodeInitializationParameters parameters, boolean compact)
          parameters で与えられる子を持つようにノードを構築します。
 
メソッドの概要
protected  void replaceChild(TopLevelClass.Node oldChild, TopLevelClass.Node newChild)
          子のノード oldChildnewChild で置き換えます。
 
クラス TopLevelClass.Default.Node から継承したメソッド
accept, getChildNodes, getParentNode, replace, setParentNode, toString
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
インタフェース TopLevelClass.Node から継承したメソッド
accept, getChildNodes, getParentNode, setParentNode
 

フィールドの詳細

ID

public static final int ID
この型の ID 値。

導入されたバージョン:
notavaCC 1.0
関連項目:
TopLevelClass.createNode(int, TopLevelClass.NodeInitializationParameters),
コンストラクタの詳細

TopLevelClass.Default.LabelOrNode

public TopLevelClass.Default.LabelOrNode(List/Node source)
source.getChildNodes()source.label() などによって与えられる子を持つようにノードを構築します。リストオブジェクトはコピーされます。

パラメータ:
source - ソース。

TopLevelClass.Default.LabelOrNode

public TopLevelClass.Default.LabelOrNode(TopLevelClass.NodeInitializationParameters parameters,
                                         boolean compact)
parameters で与えられる子を持つようにノードを構築します。

パラメータ:
parameters - 初期化パラメタ。
compact - true の場合、ラベル付けされていない子を除いてノードを作る。
メソッドの詳細

replaceChild

protected void replaceChild(TopLevelClass.Node oldChild,
                            TopLevelClass.Node newChild)
クラス TopLevelClass.Default.Node の記述:
子のノード oldChildnewChild で置き換えます。

このメソッドは、newChild.setParentNode(this)oldChild.setParentNode(null) を呼び出し、 getChildNodes() の中の oldChildnewChild で置き換えます。 また、TopLevelClass.Type.label() によって返されるノードも置き換えます。

オーバーライド:
クラス TopLevelClass.Default.Node 内の replaceChild
パラメータ:
oldChild - 交換される子。
newChild - oldChild を置き換える新しい子。