|
|
@@ -1,8 +1,8 @@
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
<!-- Reviewed: no -->
|
|
|
-<!-- EN-Revision: 18423 -->
|
|
|
+<!-- EN-Revision: 20115 -->
|
|
|
<sect1 id="zend.codegenerator.reference">
|
|
|
- <title>Zend_CodeGeneratorリファレンス</title>
|
|
|
+ <title>Zend_CodeGenerator リファレンス</title>
|
|
|
|
|
|
<sect2 id="zend.codegenerator.reference.abstracts">
|
|
|
<title>抽象クラスとインターフェース</title>
|
|
|
@@ -11,7 +11,7 @@
|
|
|
<title>Zend_CodeGenerator_Abstract</title>
|
|
|
|
|
|
<para>
|
|
|
- すべてのCodeGeneratorクラスが継承する基底のクラスは、
|
|
|
+ すべての CodeGenerator クラスが継承する基底のクラスは、
|
|
|
必要な最小限の機能性を提供します。
|
|
|
その<acronym>API</acronym>は下記の通りです。:
|
|
|
</para>
|
|
|
@@ -31,27 +31,27 @@ abstract class Zend_CodeGenerator_Abstract
|
|
|
]]></programlisting>
|
|
|
|
|
|
<para>
|
|
|
- コンストラクタは最初に<methodname>_init()</methodname>を呼び出します。
|
|
|
+ コンストラクタは最初に <methodname>_init()</methodname> を呼び出します。
|
|
|
(それは、具体的に拡張するクラスを実装するために空のままにされます)
|
|
|
- それから<methodname>setOptions()</methodname>に<varname>$options</varname>パラメータを渡し、
|
|
|
- 最後に<methodname>_prepare()</methodname>を呼び出します。
|
|
|
+ それから <methodname>setOptions()</methodname> に <varname>$options</varname> パラメータを渡し、
|
|
|
+ 最後に <methodname>_prepare()</methodname> を呼び出します。
|
|
|
(<!-- TODO -->again,
|
|
|
クラスの拡張によって実装されます。)
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- Zend Frameworkのほとんどのクラスのように、
|
|
|
- <methodname>setOptions()</methodname>ではクラスの既存のセッターへのオプション・キーを比較して、
|
|
|
+ Zend Framework のほとんどのクラスのように、
|
|
|
+ <methodname>setOptions()</methodname> ではクラスの既存のセッターへのオプション・キーを比較して、
|
|
|
見つかったら、メソッドに値を渡します。
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- <methodname>__toString()</methodname>は最後に指定され、
|
|
|
- <methodname>generate()</methodname>の代わりをします。
|
|
|
+ <methodname>__toString()</methodname> は最後に指定され、
|
|
|
+ <methodname>generate()</methodname> の代わりをします。
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- <methodname>setSourceContent()</methodname>及び<methodname>getSourceContent()</methodname>は
|
|
|
+ <methodname>setSourceContent()</methodname> 及び <methodname>getSourceContent()</methodname> は
|
|
|
デフォルト・コンテンツを生成されたコードに設定するか、
|
|
|
一旦すべての生成作業が完了した前述のコンテンツと入れ替えることを目的とします。
|
|
|
</para>
|
|
|
@@ -61,11 +61,11 @@ abstract class Zend_CodeGenerator_Abstract
|
|
|
<title>Zend_CodeGenerator_Php_Abstract</title>
|
|
|
|
|
|
<para>
|
|
|
- <classname>Zend_CodeGenerator_Php_Abstract</classname>は
|
|
|
- <classname>Zend_CodeGenerator_Abstract</classname>を拡張し、
|
|
|
+ <classname>Zend_CodeGenerator_Php_Abstract</classname> は
|
|
|
+ <classname>Zend_CodeGenerator_Abstract</classname> を拡張し、
|
|
|
生成されたコンテンツの前に現れなければならないインデントの量だけでなく、
|
|
|
コンテンツが変わったかどうか追跡するための若干のプロパティも加えます。
|
|
|
- その<acronym>API</acronym>は下記の通りです。:
|
|
|
+ その <acronym>API</acronym> は下記の通りです。:
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -84,11 +84,11 @@ abstract class Zend_CodeGenerator_Php_Abstract
|
|
|
<title>Zend_CodeGenerator_Php_Member_Abstract</title>
|
|
|
|
|
|
<para>
|
|
|
- <classname>Zend_CodeGenerator_Php_Member_Abstract</classname>は
|
|
|
+ <classname>Zend_CodeGenerator_Php_Member_Abstract</classname> は
|
|
|
クラスのメンバー - プロパティとメソッド - を生成するための基底クラスで、
|
|
|
可視性を確立するためのアクセッサとミューテータを提供します;
|
|
|
- メンバーやメンバー名がabstract、staticまたはfinalのいずれにせよ。
|
|
|
- その<acronym>API</acronym>は下記の通りです。:
|
|
|
+ メンバーやメンバー名が abstract 、 static または final のいずれにせよ。
|
|
|
+ その <acronym>API</acronym> は下記の通りです。:
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -109,21 +109,21 @@ abstract class Zend_CodeGenerator_Php_Member_Abstract
|
|
|
</sect2>
|
|
|
|
|
|
<sect2 id="zend.codegenerator.reference.concrete">
|
|
|
- <title>Concrete CodeGenerator Classes</title>
|
|
|
+ <title>CodeGenerator クラスを確立</title>
|
|
|
|
|
|
<sect3 id="zend.codegenerator.reference.concrete.php-body">
|
|
|
<title>Zend_CodeGenerator_Php_Body</title>
|
|
|
|
|
|
<para>
|
|
|
- <classname>Zend_CodeGenerator_Php_Body</classname>は、
|
|
|
+ <classname>Zend_CodeGenerator_Php_Body</classname> は、
|
|
|
ファイルの中に含む任意の手続き的なコードを生成することを目的とします。
|
|
|
そのように、単にコンテンツをオブジェクトに設定し、
|
|
|
- <methodname>generate()</methodname>を実施すると、それはそのコンテンツを返します。
|
|
|
+ <methodname>generate()</methodname> を実施すると、それはそのコンテンツを返します。
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
|
|
|
- そのクラスの<acronym>API</acronym>は下記の通りです。:
|
|
|
+ そのクラスの <acronym>API</acronym> は下記の通りです。:
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -140,10 +140,10 @@ class Zend_CodeGenerator_Php_Body extends Zend_CodeGenerator_Php_Abstract
|
|
|
<title>Zend_CodeGenerator_Php_Class</title>
|
|
|
|
|
|
<para>
|
|
|
- <classname>Zend_CodeGenerator_Php_Class</classname>は、
|
|
|
- <acronym>PHP</acronym>クラスを生成することを目的とします。
|
|
|
- 基本的機能では<acronym>PHP</acronym>クラスそのものを生成し、
|
|
|
- また、任意で関連した<acronym>PHP</acronym> DocBlockも生成します。
|
|
|
+ <classname>Zend_CodeGenerator_Php_Class</classname> は、
|
|
|
+ <acronym>PHP</acronym> クラスを生成することを目的とします。
|
|
|
+ 基本的機能では <acronym>PHP</acronym> クラスそのものを生成し、
|
|
|
+ また、任意で関連した <acronym>PHP</acronym> DocBlockも生成します。
|
|
|
クラスは他のクラスを実装するかもしれませんし、継承するかもしれません。
|
|
|
またはabstractと指定されるかもしれません。
|
|
|
他のコード・ジェネレーター・クラスを利用して、
|
|
|
@@ -151,7 +151,7 @@ class Zend_CodeGenerator_Php_Body extends Zend_CodeGenerator_Php_Abstract
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- その<acronym>API</acronym>は下記の通りです。:
|
|
|
+ その <acronym>API</acronym> は下記の通りです。:
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -185,18 +185,18 @@ class Zend_CodeGenerator_Php_Class extends Zend_CodeGenerator_Php_Abstract
|
|
|
]]></programlisting>
|
|
|
|
|
|
<para>
|
|
|
- <methodname>setProperty()</methodname>メソッドは、
|
|
|
- <classname>Zend_CodeGenerator_Php_Property</classname>インスタンスを生成するために
|
|
|
+ <methodname>setProperty()</methodname> メソッドは、
|
|
|
+ <classname>Zend_CodeGenerator_Php_Property</classname> インスタンスを生成するために
|
|
|
用いられるかもしれない情報の配列、
|
|
|
- またはただ単に<classname>Zend_CodeGenerator_Php_Property</classname>インスタンス、
|
|
|
+ またはただ単に <classname>Zend_CodeGenerator_Php_Property</classname> インスタンス、
|
|
|
を受け入れます。
|
|
|
- 同様に<methodname>setMethod()</methodname>は、
|
|
|
- <classname>Zend_CodeGenerator_Php_Method</classname>インスタンスを生成するための、
|
|
|
+ 同様に <methodname>setMethod()</methodname> は、
|
|
|
+ <classname>Zend_CodeGenerator_Php_Method</classname> インスタンスを生成するための、
|
|
|
情報の配列またはそのクラスの具体化したインスタンスを受け入れます。
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- <methodname>setDocBlock()</methodname>が<classname>Zend_CodeGenerator_Php_DocBlock</classname>の
|
|
|
+ <methodname>setDocBlock()</methodname> が <classname>Zend_CodeGenerator_Php_DocBlock</classname> の
|
|
|
インスタンスを期待することも注意してください。
|
|
|
</para>
|
|
|
</sect3>
|
|
|
@@ -205,20 +205,20 @@ class Zend_CodeGenerator_Php_Class extends Zend_CodeGenerator_Php_Abstract
|
|
|
<title>Zend_CodeGenerator_Php_Docblock</title>
|
|
|
|
|
|
<para>
|
|
|
- <classname>Zend_CodeGenerator_Php_Docblock</classname>は、
|
|
|
- すべての標準的なdocblock機能を含む任意の<acronym>PHP</acronym> docblockを生成することで使うことができます:
|
|
|
+ <classname>Zend_CodeGenerator_Php_Docblock</classname> は、
|
|
|
+ すべての標準的な docblock 機能を含む任意の <acronym>PHP</acronym> docblock を生成することで使用できます:
|
|
|
短い、または長い説明や注釈タグ。
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- 注釈タグは<methodname>setTag()</methodname>や<methodname>setTags()</methodname>メソッドを用いてセットされるかもしれません;
|
|
|
- これらは<classname>Zend_CodeGenerator_Php_Docblock_Tag</classname>コンストラクタに渡されるかもしれないタグを記述している配列、
|
|
|
+ 注釈タグは <methodname>setTag()</methodname> や <methodname>setTags()</methodname> メソッドを用いてセットされるかもしれません;
|
|
|
+ これらは <classname>Zend_CodeGenerator_Php_Docblock_Tag</classname> コンストラクタに渡されるかもしれないタグを記述している配列、
|
|
|
またはそのクラスのインスタンスどちらもそれぞれ
|
|
|
<!-- TODO -->take
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- その<acronym>API</acronym>は下記の通りです。:
|
|
|
+ その <acronym>API</acronym> は下記の通りです。:
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -243,13 +243,13 @@ class Zend_CodeGenerator_Php_Docblock extends Zend_CodeGenerator_Php_Abstract
|
|
|
<title>Zend_CodeGenerator_Php_Docblock_Tag</title>
|
|
|
|
|
|
<para>
|
|
|
- <classname>Zend_CodeGenerator_Php_Docblock_Tag</classname>は、
|
|
|
- <acronym>PHP</acronym> docblockに含む任意の注釈タグを作成することを目的とします。
|
|
|
+ <classname>Zend_CodeGenerator_Php_Docblock_Tag</classname> は、
|
|
|
+ <acronym>PHP</acronym> docblock に含む任意の注釈タグを作成することを目的とします。
|
|
|
タグは、名前(@記号にすぐ続く部分)と説明(タグ名に続いているすべて)を含むことになっています。
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- そのクラスの<acronym>API</acronym>は下記の通りです。:
|
|
|
+ そのクラスの <acronym>API</acronym> は下記の通りです。:
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -272,16 +272,16 @@ class Zend_CodeGenerator_Php_Docblock_Tag
|
|
|
<title>Zend_CodeGenerator_Php_DocBlock_Tag_Param</title>
|
|
|
|
|
|
<para>
|
|
|
- <classname>Zend_CodeGenerator_Php_DocBlock_Tag_Param</classname>は
|
|
|
- <classname>Zend_CodeGenerator_Php_DocBlock_Tag</classname>の分化したバージョンで、
|
|
|
+ <classname>Zend_CodeGenerator_Php_DocBlock_Tag_Param</classname> は
|
|
|
+ <classname>Zend_CodeGenerator_Php_DocBlock_Tag</classname> の分化したバージョンで、
|
|
|
メソッド・パラメータを表します。
|
|
|
- そこで、タグ名は("param")として知られています、
|
|
|
+ そこで、タグ名は( "param" )として知られています、
|
|
|
しかし、この注釈タグを構成するパラメータ名とデータ型を生成するために、
|
|
|
追加の情報が必要とされます。
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- そのクラスの<acronym>API</acronym>は下記の通りです。:
|
|
|
+ そのクラスの <acronym>API</acronym> は下記の通りです。:
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -304,14 +304,14 @@ class Zend_CodeGenerator_Php_Docblock_Tag_Param
|
|
|
<title>Zend_CodeGenerator_Php_DocBlock_Tag_Return</title>
|
|
|
|
|
|
<para>
|
|
|
- param docblock <!-- TODO -->tag variantのように、
|
|
|
- <classname>Zend_CodeGenerator_Php_Docblock_Tab_Return</classname>は
|
|
|
- メソッドの戻り値を表すための注釈<!-- TODO -->tag variantです。
|
|
|
- この場合、注釈タグ名は("return")として知られていますが、戻す型を必要とします。
|
|
|
+ param docblock <!-- TODO -->tag variant のように、
|
|
|
+ <classname>Zend_CodeGenerator_Php_Docblock_Tab_Return</classname> は
|
|
|
+ メソッドの戻り値を表すための注釈 <!-- TODO -->tag variantです。
|
|
|
+ この場合、注釈タグ名は( "return" )として知られていますが、戻す型を必要とします。
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- そのクラスの<acronym>API</acronym>は下記の通りです。:
|
|
|
+ そのクラスの <acronym>API</acronym> は下記の通りです。:
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -332,22 +332,22 @@ class Zend_CodeGenerator_Php_Docblock_Tag_Param
|
|
|
<title>Zend_CodeGenerator_Php_File</title>
|
|
|
|
|
|
<para>
|
|
|
- <classname>Zend_CodeGenerator_Php_File</classname>は、
|
|
|
- <acronym>PHP</acronym>コードを含むファイルの完全なコンテンツを生成することに使われます。
|
|
|
- ファイル・レベルのdocblockと同様に必要に応じて、
|
|
|
- ファイルはクラスまたは任意の<acronym>PHP</acronym>コードを含むかもしれません。
|
|
|
+ <classname>Zend_CodeGenerator_Php_File</classname> は、
|
|
|
+ <acronym>PHP</acronym> コードを含むファイルの完全なコンテンツを生成することに使われます。
|
|
|
+ ファイル・レベルの docblock と同様に必要に応じて、
|
|
|
+ ファイルはクラスまたは任意の <acronym>PHP</acronym> コードを含むかもしれません。
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
クラスをファイルに加えるとき、
|
|
|
- <classname>Zend_CodeGenerator_Php_Class</classname>コンストラクタに渡す情報の配列か、
|
|
|
+ <classname>Zend_CodeGenerator_Php_Class</classname> コンストラクタに渡す情報の配列か、
|
|
|
そのクラスのインスタンスのどちらかを渡す必要があります。
|
|
|
- 同様にdocblockで、<classname>Zend_CodeGenerator_Php_Docblock</classname>コンストラクタが消費する情報、
|
|
|
+ 同様に docblock で、 <classname>Zend_CodeGenerator_Php_Docblock</classname> コンストラクタが消費する情報、
|
|
|
またはクラスのインスタンスを渡す必要があります。
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- そのクラスの<acronym>API</acronym>は下記の通りです。:
|
|
|
+ そのクラスの <acronym>API</acronym> は下記の通りです。:
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -380,13 +380,13 @@ class Zend_CodeGenerator_Php_File extends Zend_CodeGenerator_Php_Abstract
|
|
|
<title>Zend_CodeGenerator_Php_Member_Container</title>
|
|
|
|
|
|
<para>
|
|
|
- <classname>Zend_CodeGenerator_Php_Member_Container</classname>は、
|
|
|
- <classname>Zend_CodeGenerator_Php_Class</classname>によって、
|
|
|
+ <classname>Zend_CodeGenerator_Php_Member_Container</classname> は、
|
|
|
+ <classname>Zend_CodeGenerator_Php_Class</classname> によって、
|
|
|
内部的にクラスのメンバー - プロパティやメソッドなど - の経過を追う目的に使われます。
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- そのクラスの<acronym>API</acronym>は下記の通りです。:
|
|
|
+ そのクラスの <acronym>API</acronym> は下記の通りです。:
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -401,22 +401,22 @@ class Zend_CodeGenerator_Php_Member_Container extends ArrayObject
|
|
|
<title>Zend_CodeGenerator_Php_Method</title>
|
|
|
|
|
|
<para>
|
|
|
- <classname>Zend_CodeGenerator_Php_Method</classname>は、
|
|
|
+ <classname>Zend_CodeGenerator_Php_Method</classname> は、
|
|
|
クラス・メソッドを記述して、
|
|
|
- メソッドのためにコードとdocblockを生成できます。
|
|
|
- その親クラス、<classname>Zend_CodeGenerator_Php_Member_Abstract</classname>の通りに、
|
|
|
- static、abstractまたはfinalとしての可視性と状態が指示されるかもしれません。
|
|
|
+ メソッドのためにコードと docblock を生成できます。
|
|
|
+ その親クラス、 <classname>Zend_CodeGenerator_Php_Member_Abstract</classname> の通りに、
|
|
|
+ static 、 abstract または final としての可視性と状態が指示されるかもしれません。
|
|
|
最後に、メソッドのパラメータと戻り値は、指定されるかもしれません。
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- パラメータは<methodname>setParameter()</methodname>または<methodname>setParameters()</methodname>を用いて設定されるかもしれません。
|
|
|
- それぞれの場合、パラメータは<classname>Zend_CodeGenerator_Php_Parameter</classname>コンストラクタに渡す情報の配列か、
|
|
|
+ パラメータは <methodname>setParameter()</methodname> または <methodname>setParameters()</methodname> を用いて設定されるかもしれません。
|
|
|
+ それぞれの場合、パラメータは <classname>Zend_CodeGenerator_Php_Parameter</classname> コンストラクタに渡す情報の配列か、
|
|
|
またはそのクラスのインスタンスでなければいけません。
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- そのクラスの<acronym>API</acronym>は下記の通りです。:
|
|
|
+ そのクラスの <acronym>API</acronym> は下記の通りです。:
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -443,7 +443,7 @@ class Zend_CodeGenerator_Php_Method
|
|
|
<title>Zend_CodeGenerator_Php_Parameter</title>
|
|
|
|
|
|
<para>
|
|
|
- <classname>Zend_CodeGenerator_Php_Parameter</classname>は、
|
|
|
+ <classname>Zend_CodeGenerator_Php_Parameter</classname> は、
|
|
|
メソッドのパラメータを指定することに使われるかもしれません。
|
|
|
各々のパラメータは、位置やデフォルト値、データ型を持つかもしれません;
|
|
|
パラメータ名は必須です。
|
|
|
@@ -451,7 +451,7 @@ class Zend_CodeGenerator_Php_Method
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- そのクラスの<acronym>API</acronym>は下記の通りです。:
|
|
|
+ そのクラスの <acronym>API</acronym> は下記の通りです。:
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
|
@@ -475,7 +475,7 @@ class Zend_CodeGenerator_Php_Parameter extends Zend_CodeGenerator_Php_Abstract
|
|
|
]]></programlisting>
|
|
|
|
|
|
<para>
|
|
|
- 既定値として null、ブーリアンまたは配列を設定しようとすると、
|
|
|
+ 既定値として <constant>NULL</constant> 、ブーリアンまたは配列を設定しようとすると、
|
|
|
いくつかの問題が起きるかもしれません。
|
|
|
このために、バリューホルダー・オブジェクト
|
|
|
<classname>Zend_CodeGenerator_Php_ParameterDefaultValue</classname>
|
|
|
@@ -493,8 +493,8 @@ $parameter->setDefaultValue(
|
|
|
]]></programlisting>
|
|
|
|
|
|
<para>
|
|
|
- 内部的には<methodname>setDefaultValue()</methodname>も
|
|
|
- <acronym>PHP</acronym>で表現できない値をバリューホルダーに変換します。
|
|
|
+ 内部的には <methodname>setDefaultValue()</methodname> も
|
|
|
+ <acronym>PHP</acronym> で表現できない値をバリューホルダーに変換します。
|
|
|
</para>
|
|
|
|
|
|
</sect3>
|
|
|
@@ -503,15 +503,15 @@ $parameter->setDefaultValue(
|
|
|
<title>Zend_CodeGenerator_Php_Property</title>
|
|
|
|
|
|
<para>
|
|
|
- <classname>Zend_CodeGenerator_Php_Property</classname>はクラスのプロパティを記述します。
|
|
|
+ <classname>Zend_CodeGenerator_Php_Property</classname> はクラスのプロパティを記述します。
|
|
|
それは定数か変数であるかもしれません。
|
|
|
どちらの場合も、プロパティには関連するデフォルト値をオプションで持つかもしれません。
|
|
|
- さらに、親クラス(<classname>Zend_CodeGenerator_Php_Member_Abstract</classname>)を通じて
|
|
|
+ さらに、親クラス( <classname>Zend_CodeGenerator_Php_Member_Abstract</classname> )を通じて
|
|
|
変数のプロパティの可視性が設定されるかもしれません。
|
|
|
</para>
|
|
|
|
|
|
<para>
|
|
|
- そのクラスの<acronym>API</acronym>は下記の通りです。:
|
|
|
+ そのクラスの <acronym>API</acronym> は下記の通りです。:
|
|
|
</para>
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|