fleshed out AppendIterator methods

git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@324508 c90b9560-bf6c-de11-be94-00142212c4b1
This commit is contained in:
Peter Cowburn 2012-03-24 20:10:47 +00:00
parent e35c820a23
commit ad0e460b02
10 changed files with 203 additions and 45 deletions

View file

@ -16,9 +16,6 @@
<para>
Appends an iterator.
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
@ -44,6 +41,37 @@
</para>
</refsect1>
<refsect1 role="examples"><!-- {{{ -->
&reftitle.examples;
<para>
<example xml:id="appenditerator.append.examples.basic"><!-- {{{ -->
<title><methodname>AppendIterator::append</methodname> example</title>
<programlisting role="php">
<![CDATA[
<?php
$array_a = new ArrayIterator(array('a', 'b', 'c'));
$array_b = new ArrayIterator(array('d', 'e', 'f'));
$iterator = new AppendIterator;
$iterator->append($array_a);
$iterator->append($array_b);
foreach ($iterator as $current) {
echo $current;
}
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
abcdef
]]>
</screen>
</example><!-- }}} -->
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<para>

View file

@ -47,12 +47,12 @@ $appendIterator->append($pizzas);
$appendIterator->append($toppings);
foreach ($appendIterator as $key => $item) {
echo "$key => $item", PHP_EOL;
echo $key . ' => ' . $item . PHP_EOL;
}
?>
]]>
</programlisting>
&example.outputs.similar;
&example.outputs;
<screen>
<![CDATA[
0 => Margarita
@ -91,7 +91,7 @@ while ($appendIterator->valid()) {
?>
]]>
</programlisting>
&example.outputs.similar;
&example.outputs;
<screen>
<![CDATA[
0 => 0 => Margarita

View file

@ -10,15 +10,12 @@
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>AppendIterator::current</methodname>
<modifier>public</modifier> <type>mixed</type><methodname>AppendIterator::current</methodname>
<void />
</methodsynopsis>
<para>
Gets the current value.
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
@ -37,7 +34,11 @@
&reftitle.seealso;
<para>
<simplelist>
<member><methodname>Iterator::current</methodname></member>
<member><methodname>AppendIterator::key</methodname></member>
<member><methodname>AppendIterator::valid</methodname></member>
<member><methodname>AppendIterator::next</methodname></member>
<member><methodname>AppendIterator::rewind</methodname></member>
</simplelist>
</para>
</refsect1>

View file

@ -4,7 +4,7 @@
<refentry xml:id="appenditerator.getarrayiterator" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>AppendIterator::getArrayIterator</refname>
<refpurpose>The getArrayIterator method</refpurpose>
<refpurpose>Gets the ArrayIterator</refpurpose>
</refnamediv>
<refsect1 role="description">
@ -14,11 +14,9 @@
<void />
</methodsynopsis>
<para>
The getArrayIterator method
This method gets the <classname>ArrayIterator</classname> that is used to
store the iterators added with <methodname>AppendIterator::append</methodname>.
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
@ -29,7 +27,8 @@
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns an <classname>ArrayIterator</classname> containing
the appended iterators.
</para>
</refsect1>

View file

@ -4,21 +4,18 @@
<refentry xml:id="appenditerator.getinneriterator" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>AppendIterator::getInnerIterator</refname>
<refpurpose>Gets an inner iterator</refpurpose>
<refpurpose>Gets the inner iterator</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>AppendIterator::getInnerIterator</methodname>
<modifier>public</modifier> <type>Iterator</type><methodname>AppendIterator::getInnerIterator</methodname>
<void />
</methodsynopsis>
<para>
Get an inner iterator
This method returns the current inner iterator.
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
@ -29,15 +26,56 @@
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
The current inner Iterator.
The current inner iterator, or &null; if there is not one.
</para>
</refsect1>
<refsect1 role="examples"><!-- {{{ -->
&reftitle.examples;
<para>
<example xml:id="appenditerator.getinneriterator.examples.basic"><!-- {{{ -->
<title><methodname>AppendIterator::getInnerIterator</methodname> example</title>
<programlisting role="php">
<![CDATA[
<?php
$array_a = new ArrayIterator(array('a' => 'aardwolf', 'b' => 'bear', 'c' => 'capybara'));
$array_b = new RegexIterator($array_a, '/^[ac]/');
$iterator = new AppendIterator;
$iterator->append($array_a);
$iterator->append($array_b);
foreach ($iterator as $current) {
$inner = $iterator->getInnerIterator();
if ($inner instanceOf RegexIterator) {
echo 'Filtered: ';
} else {
echo 'Original: ';
}
echo $current . PHP_EOL;
}
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
Original: aardwolf
Original: bear
Original: capybara
Filtered: aardwolf
Filtered: capybara
]]>
</screen>
</example><!-- }}} -->
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><methodname>AppendIterator::getArrayIterator</methodname></member>
<member><methodname>AppendIterator::getIteratorIndex</methodname></member>
</simplelist>
</para>
</refsect1>

View file

@ -10,15 +10,12 @@
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>AppendIterator::getIteratorIndex</methodname>
<modifier>public</modifier> <type>int</type><methodname>AppendIterator::getIteratorIndex</methodname>
<void />
</methodsynopsis>
<para>
Get an index of iterators.
Gets the index of the current inner iterator.
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
@ -29,15 +26,54 @@
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
The index of iterators.
Returns an <type>integer</type>, which is the zero-based index
of the current inner iterator.
</para>
</refsect1>
<refsect1 role="examples"><!-- {{{ -->
&reftitle.examples;
<para>
<example xml:id="appenditerator.getiteratorindex.examples.basic"><!-- {{{ -->
<title><methodname>AppendIterator.getIteratorIndex</methodname> basic example</title>
<programlisting role="php">
<![CDATA[
<?php
$array_a = new ArrayIterator(array('a' => 'aardwolf', 'b' => 'bear', 'c' => 'capybara'));
$array_b = new ArrayIterator(array('apple', 'orange', 'lemon'));
$iterator = new AppendIterator;
$iterator->append($array_a);
$iterator->append($array_b);
foreach ($iterator as $key => $current) {
echo $iterator->getIteratorIndex() . ' ' . $key . ' ' . $current . PHP_EOL;
}
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
0 a aardwolf
0 b bear
0 c capybara
1 0 apple
1 1 orange
1 2 lemon
]]>
</screen>
</example><!-- }}} -->
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><methodname>AppendIterator::getInnerIterator</methodname></member>
<member><methodname>AppendIterator::getArrayIterator</methodname></member>
</simplelist>
</para>
</refsect1>

View file

@ -16,9 +16,6 @@
<para>
Get the current key
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
@ -33,11 +30,68 @@
</para>
</refsect1>
<refsect1 role="examples"><!-- {{{ -->
&reftitle.examples;
<para>
<example xml:id="appenditerator.key.examples.basic"><!-- {{{ -->
<title><methodname>AppendIterator::key</methodname> basic example</title>
<programlisting role="php">
<![CDATA[
<?php
$array_a = new ArrayIterator(array('a' => 'aardwolf', 'b' => 'bear', 'c' => 'capybara'));
$array_b = new ArrayIterator(array('apple', 'orange', 'lemon'));
$iterator = new AppendIterator;
$iterator->append($array_a);
$iterator->append($array_b);
// Manual iteration
$iterator->rewind();
while ($iterator->valid()) {
echo $iterator->key() . ' ' . $iterator->current() . PHP_EOL;
$iterator->next();
}
echo PHP_EOL;
// With foreach
foreach ($iterator as $key => $current) {
echo $key . ' ' . $current . PHP_EOL;
}
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
a aardwolf
b bear
c capybara
0 apple
1 orange
2 lemon
a aardwolf
b bear
c capybara
0 apple
1 orange
2 lemon
]]>
</screen>
</example><!-- }}} -->
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><methodname>Iterator::key</methodname></member>
<member><methodname>AppendIterator::current</methodname></member>
<member><methodname>AppendIterator::valid</methodname></member>
<member><methodname>AppendIterator::next</methodname></member>
<member><methodname>AppendIterator::rewind</methodname></member>
</simplelist>
</para>
</refsect1>

View file

@ -17,9 +17,6 @@
Moves to the next element. If this means to another Iterator
then it rewinds that Iterator.
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
@ -38,6 +35,10 @@
&reftitle.seealso;
<para>
<simplelist>
<member><methodname>Iterator::next</methodname></member>
<member><methodname>AppendIterator::current</methodname></member>
<member><methodname>AppendIterator::key</methodname></member>
<member><methodname>AppendIterator::valid</methodname></member>
<member><methodname>AppendIterator::rewind</methodname></member>
</simplelist>
</para>

View file

@ -16,9 +16,6 @@
<para>
Rewind to the first element of the first inner Iterator.
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
@ -37,7 +34,11 @@
&reftitle.seealso;
<para>
<simplelist>
<member><methodname>Iterator::rewind</methodname></member>
<member><methodname>AppendIterator::current</methodname></member>
<member><methodname>AppendIterator::key</methodname></member>
<member><methodname>AppendIterator::next</methodname></member>
<member><methodname>AppendIterator::valid</methodname></member>
</simplelist>
</para>
</refsect1>

View file

@ -10,15 +10,12 @@
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>AppendIterator::valid</methodname>
<modifier>public</modifier> <type>bool</type><methodname>AppendIterator::valid</methodname>
<void />
</methodsynopsis>
<para>
Checks validity of the current element.
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
@ -29,7 +26,7 @@
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.success;
Returns &true; if the current iteration is valid, &false; otherwise.
</para>
</refsect1>
@ -37,7 +34,10 @@
&reftitle.seealso;
<para>
<simplelist>
<member><methodname>AppendIterator::append</methodname></member>
<member><methodname>AppendIterator::current</methodname></member>
<member><methodname>AppendIterator::key</methodname></member>
<member><methodname>AppendIterator::next</methodname></member>
<member><methodname>AppendIterator::rewind</methodname></member>
</simplelist>
</para>
</refsect1>