Markup

クラス: Peach_Markup_Context

定義: /Peach/Markup/Context.php

各ノードを変換する処理を担当するクラスです.

このクラスは Visitor パターンにより設計されています (Visitor クラスに相当します). Builder クラスと連携して以下のように動作します.

  1. エンドユーザーが Builder オブジェクトの build() メソッドを実行します
  2. build() メソッドの内部で新しい Context オブジェクトが生成されます
  3. Context オブジェクトの handle() メソッドが呼び出され, build() の引数に指定されたノードを変換します
  4. 変換結果を getResult() から取り出し, build() メソッドの返り値として返します

Tags

  • abstract

メソッド

直系の既知のサブクラス

Peach_Markup_DebugContext
デバッグのために使用される Context です.
Peach_Markup_DefaultContext
与えられたノードを HTML や XML などの文字列に変換するクラスです.

メソッド 詳細

getResult

line 97

mixed getResult()

処理結果を取得します. まだ handle() が実行されていない場合は NULL を返します.

Tags

  • return : 処理結果
  • abstract
  • access : public

handle

line 45

void handle(Peach_Markup_Component $c)

指定されたオブジェクトを処理します.

オブジェクトの種類に応じて, このクラスの具象クラスで定義された各 handle メソッドに処理が割り当てられます. Visitor パターンの visit メソッドに相当します.

Tags

  • access : public

引数

Peach_Markup_Component   $c   処理対象の Component

handleCode

line 72

void handleCode(Peach_Markup_Code $node)

整形済テキストを処理します.

Tags

  • abstract
  • access : public

引数

Peach_Markup_Code   $node   処理対象の整形済テキスト

handleComment

line 78

void handleComment(Peach_Markup_Comment $node)

コメントノードを処理します.

Tags

  • abstract
  • access : public

引数

Peach_Markup_Comment   $node   処理対象のコメント

handleContainerElement

line 54

void handleContainerElement(Peach_Markup_ContainerElement $node)

コンテナ要素を処理します.

Tags

  • abstract
  • access : public

引数

Peach_Markup_ContainerElement   $node   処理対象のコンテナ要素

handleEmptyElement

line 60

void handleEmptyElement(Peach_Markup_EmptyElement $node)

空要素タグを処理します.

Tags

  • abstract
  • access : public

引数

Peach_Markup_EmptyElement   $node   処理対象の空要素

handleNodeList

line 84

void handleNodeList(Peach_Markup_NodeList $node)

NodeList を処理します.

Tags

  • abstract
  • access : public

引数

Peach_Markup_NodeList   $node   処理対象の NodeList

handleNone

line 90

void handleNone(Peach_Markup_None $none)

None を処理します.

Tags

  • abstract
  • access : public

引数

Peach_Markup_None   $none   処理対象の None オブジェクト

handleText

line 66

void handleText(Peach_Markup_Text $node)

テキストノードを処理します.

Tags

  • abstract
  • access : public

引数

Peach_Markup_Text   $node   処理対象のテキスト