woolpack.visitor
クラス Visitor<S>
java.lang.Object
woolpack.visitor.Visitor<S>
- 型パラメータ:
S
- サブコンテキスト。
public class Visitor<S>
- extends java.lang.Object
インタープリタ デザインパターンの Expression 役と Context 役との間をダブルディスパッチする方式で定義した
Visitor デザインパターンの Visitor 役です。
visit(Object)
メソッドは
まず引数の element をキーとして委譲先を検索します。
最初にマッチした場合は委譲して処理を終了します。
次に引数の element のクラス名の代入可能性で委譲先を検索します。
最初にマッチした場合は委譲して処理を終了します。
いずれもマッチしない場合はなにもしないで処理を終了します。
このクラスは LSP(The Liskov Substitution Principle) を満たしません。
適用しているデザインパターン:Visitor, Interpreter(Context役)。
- 作成者:
- nakamura
クラス java.lang.Object から継承されたメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Visitor
public Visitor()
visit
public void visit(java.lang.Object element)
visit
public void visit()
getSubContext
public S getSubContext()
setSubContext
public void setSubContext(S context)
getMap
public java.util.Map<java.lang.Object,? extends Fn<? super Visitor<S>,java.lang.Void>> getMap()
setMap
public void setMap(java.util.Map<java.lang.Object,? extends Fn<? super Visitor<S>,java.lang.Void>> map)
- パラメータ:
map
- 変数またはそのクラスオブジェクトと委譲先の対応表。
getElement
public java.lang.Object getElement()
setElement
public void setElement(java.lang.Object element)
Copyright (C) 2006-2007 Takahiro Nakamura. All rights reserved.