Kagetaka

net.hizlab.kagetaka.token
クラス StartToken

java.lang.Object
  拡張net.hizlab.kagetaka.token.Token
      拡張net.hizlab.kagetaka.token.StartToken
直系の既知のサブクラス:
FormStartToken, FrameStartToken, RubyStartToken, StyleStartToken, TableStartToken

public class StartToken
extends Token

トークンの開始を表現するスーパークラスです。

バージョン:
$Revision: 1.7 $

フィールドの概要
protected  Attribute attribute
          属性
protected  Vector contents
          このトークンに含まれている子要素
protected  String rawContent
          解釈しない内容
protected  int type
          トークンタイプ
 
クラス net.hizlab.kagetaka.token.Token から継承したフィールド
columnNumber, completeToken, content, lineNumber, reporter
 
コンストラクタの概要
StartToken(Content content, int line, int column, Reporter reporter, int type, boolean complete)
          任意のトークンの開始を作成します。
 
メソッドの概要
 Attribute getAttribute()
          各トークン毎の属性を返します。
 StartToken getBeforeStartToken()
          このトークンと同じレベルにある前のトークンを返します。
 String getContent()
          内容を解釈してはいけないトークンの中身を返します。
 StartToken getDefaultParentToken()
          このトークンが所属するデフォルトの親トークンを返します。
protected  StartToken getDefaultParentTokenImple()
          このトークンが所属するデフォルトの親トークンタイプを返します。
 EndToken getEndToken(Token current)
          この開始トークンに対応する終了トークンを返します。
protected  EndToken getEndTokenImpl(Token current)
          この開始トークンに対応する終了トークンを返します。
 int getEndTokenType()
          この開始トークンに対応する終了トークンの、トークンタイプを返します。
 String getName()
          トークンの名前を返します。
 int getType()
          トークンのタイプを返します。
 void includeToken(Token token)
          指定されたトークンが、子要素として追加された場合に呼び出されます。
protected  void includeTokenImple(Token token)
          指定されたトークンが、子要素として追加された場合に呼び出される 処理を実装します。
protected  void includeTokenParent(Token token)
          指定されたトークンが、子要素として追加された場合に、親に通知します。
 void initAttribute(Hashtable pairs)
          属性値の設定を行います。
 boolean isContents(StartToken token)
          指定されたトークンを含むことが出来るかをテストします。
protected  boolean isContentsImple(int childToken)
          指定されたトークンを含むことが出来るかをテストを実装します。
protected  boolean isContentsParent(int childToken)
          指定されたトークンを含むことが出来るかを親でテストします。
 void render(Render render, int pseudo)
          この開始トークンのタイプと属性値を元に、描画を行います。
protected  void renderImple(Render render)
          この開始トークンのタイプと属性値を元に、描画を行う処理を実装します。
protected  boolean setAttributeImple(String key, String value)
          指定された属性名と属性値で、属性を設定します。
 void setContent(String content)
          内容を解釈してはいけないトークンの中身を設定します。
 String toString()
          このトークンの文字列表現を返します。
 
クラス net.hizlab.kagetaka.token.Token から継承したメソッド
getColumnNumber, getCompleteToken, getLineNumber, getParent, reportMessage
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

attribute

protected Attribute attribute
属性


contents

protected Vector contents
このトークンに含まれている子要素


rawContent

protected String rawContent
解釈しない内容


type

protected final int type
トークンタイプ

コンストラクタの詳細

StartToken

public StartToken(Content content,
                  int line,
                  int column,
                  Reporter reporter,
                  int type,
                  boolean complete)
任意のトークンの開始を作成します。

パラメータ:
content - コンテンツ
line - 行番号 (1 から)、 特定できない場合は 0
column - カラム位置 (1 から)、 特定できない場合は 0
reporter - エラーレポータ
type - トークンの開始を表すタイプ
complete - 補完して作られた場合は true、 それ以外の場合は false
メソッドの詳細

getAttribute

public Attribute getAttribute()
各トークン毎の属性を返します。

戻り値:
属性、設定されていない場合や、属性が必要ない場合は null

getBeforeStartToken

public StartToken getBeforeStartToken()
このトークンと同じレベルにある前のトークンを返します。

戻り値:
同じレベルの前のトークン、無い場合は null
メモ:
頻繁に呼び出されるようならば、 もう少し早い方法を検討する必要があると思う。

getContent

public String getContent()
内容を解釈してはいけないトークンの中身を返します。

戻り値:
対応する終了トークンまでのデータ

getDefaultParentToken

public final StartToken getDefaultParentToken()
このトークンが所属するデフォルトの親トークンを返します。 親トークンとして考えられるトークンが複数存在する場合は、 もっとも適切なトークンを返す必要があります。

親トークンが省略されている場合は、ここで返された開始トークンが 親トークンとして利用されるので、このメソッドを呼び出すたびに、 毎回別々のインスタンスを返されます。

戻り値:
デフォルトの親トークン、 最上位のトークンのみ null

getDefaultParentTokenImple

protected StartToken getDefaultParentTokenImple()
このトークンが所属するデフォルトの親トークンタイプを返します。 親トークンとして考えられるトークンが複数存在する場合は、 もっとも適切なトークンを返す必要があります。

親トークンが省略されている場合は、ここで返された開始トークンが 親トークンとして利用されるので、このメソッドを呼び出すたびに、 毎回別々のインスタンスを返す必要があります。

戻り値:
デフォルトの親トークン、 デフォルトを生成できない場合は null

getEndToken

public final EndToken getEndToken(Token current)
この開始トークンに対応する終了トークンを返します。 このトークンが空トークンの場合は、null を返します。

終了トークンが省略されている場合に、ここで返された終了トークンが 終了トークンとして利用されるます。 このメソッドは呼び出されるたびに、毎回別々のインスタンスを返します。

パラメータ:
current - 現在のカーソル位置のトークン、 カーソル位置が不定の場合は null
戻り値:
対応する終了トークン、空トークンの場合は null

getEndTokenImpl

protected EndToken getEndTokenImpl(Token current)
この開始トークンに対応する終了トークンを返します。 このメソッドは呼び出されるたびに、毎回別々のインスタンスを返します。 空トークンの場合は呼び出されません。

パラメータ:
current - 現在のカーソル位置のトークン、 カーソル位置が不定の場合は null
戻り値:
対応する終了トークン

getEndTokenType

public int getEndTokenType()
この開始トークンに対応する終了トークンの、トークンタイプを返します。 このトークンが空トークンの場合は、TokenTypes.UNKNOWN を 返します。

ここで返される終了トークンのタイプは、終了トークンが 省略されている場合のチェックに利用されます。

戻り値:
対応する終了トークンのタイプ、 空トークンの場合は TokenTypes.UNKNOWN

getName

public String getName()
トークンの名前を返します。

定義:
クラス Token 内の getName
戻り値:
トークンの名前

getType

public int getType()
トークンのタイプを返します。

定義:
クラス Token 内の getType
戻り値:
トークンのタイプ
関連項目:
TokenTypes

includeToken

public final void includeToken(Token token)
指定されたトークンが、子要素として追加された場合に呼び出されます。 このメソッドにより追加される子要素は、直接の子要素だけで、 孫要素などの場合は呼び出されません。

このメソッドにより追加された子要素は、contents に格納されます。 この値を見て isContents(StartToken) メソッドなどで 適切に判定することが可能です。

パラメータ:
token - 追加された子要素
関連項目:
isContents(StartToken)

includeTokenImple

protected void includeTokenImple(Token token)
指定されたトークンが、子要素として追加された場合に呼び出される 処理を実装します。 このメソッドにより追加される子要素は、直接の子要素だけで、 孫要素などの場合は呼び出されません。

パラメータ:
token - 追加された子要素
関連項目:
includeToken(Token), includeTokenParent(Token)

includeTokenParent

protected final void includeTokenParent(Token token)
指定されたトークンが、子要素として追加された場合に、親に通知します。 自分の存在を無視し、親に処理をまかせる場合に呼び出します。

パラメータ:
token - 追加された子要素
関連項目:
includeToken(Token), includeTokenImple(Token)

initAttribute

public final void initAttribute(Hashtable pairs)
属性値の設定を行います。

パラメータ:
pairs - 属性名と属性値のペア、 存在しない場合は null

isContents

public final boolean isContents(StartToken token)
指定されたトークンを含むことが出来るかをテストします。 token によって指定されたトークンを、 このトークンが含むことが可能の場合は true を、 不可能な場合は false を返します。

例えば、文法上含むことが出来ないトークンを指定された場合や、 一つしか要素を含むことが出来ないトークンで、 既にトークンを含んでいる場合などは false が返されます。

パラメータ:
token - テスト対象のトークン
戻り値:
含むことが可能な場合は true、 そうでない場合は false
関連項目:
includeToken(Token)

isContentsImple

protected boolean isContentsImple(int childToken)
指定されたトークンを含むことが出来るかをテストを実装します。 token によって指定されたトークンを、 このトークンが含むことが可能の場合は true を、 不可能な場合は false を返します。

例えば、文法上含むことが出来ないトークンを指定された場合や、 一つしか要素を含むことが出来ないトークンで、 既にトークンを含んでいる場合などは false が返します。

パラメータ:
childToken - テスト対象のトークンタイプ
戻り値:
含むことが可能な場合は true、 そうでない場合は false
関連項目:
includeToken(Token), isContents(StartToken), isContentsParent(int)

isContentsParent

protected final boolean isContentsParent(int childToken)
指定されたトークンを含むことが出来るかを親でテストします。

パラメータ:
childToken - 含めるトークン
戻り値:
含むことが可能な場合は true、 そうでない場合は false
関連項目:
includeToken(Token), isContents(StartToken), isContentsImple(int)

render

public final void render(Render render,
                         int pseudo)
この開始トークンのタイプと属性値を元に、描画を行います。

オーバーライド:
クラス Token 内の render
パラメータ:
render - 描画
pseudo - 擬似クラス

renderImple

protected void renderImple(Render render)
この開始トークンのタイプと属性値を元に、描画を行う処理を実装します。

パラメータ:
render - 描画

setAttributeImple

protected boolean setAttributeImple(String key,
                                    String value)
                             throws IllegalArgumentException
指定された属性名と属性値で、属性を設定します。 属性名が存在する場合は true を、 存在しない場合は false を返します。 渡される key は、必ず小文字に変換されています。

パラメータ:
key - 属性名
value - 属性値
戻り値:
属性名が存在する場合は true、 それ以外の場合は false
例外:
IllegalArgumentException - 不正な属性値の場合

setContent

public void setContent(String content)
内容を解釈してはいけないトークンの中身を設定します。

パラメータ:
content - 対応する終了トークンまでのデータ

toString

public String toString()
このトークンの文字列表現を返します。

StartToken クラスの toString メソッドは、 getName() メソッドによって返されるトークン名を < > で囲んだ値、アットマーク (@)、およびオブジェクトのハッシュコードの 符号なし 16 進表現から構成される文字列を返します。

戻り値:
文字列表現

Kagetaka

Copyright (c) 2002-2004 The Kagetaka Project 'November 20, 2004'