Skip to content

Commit 2c974ae

Browse files
committed
Fix GH-896: InternalIterator is not documented
Closes GH-899.
1 parent 9c01241 commit 2c974ae

File tree

10 files changed

+378
-0
lines changed

10 files changed

+378
-0
lines changed

appendices/migration80/new-features.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -232,6 +232,11 @@ class ChildClass extends ParentClass {
232232
<code>(int) $resource</code>. It provides the same functionality under a clearer API.
233233
</para>
234234
</listitem>
235+
<listitem>
236+
<para>
237+
The <classname>InternalInterface</classname> has been added.
238+
</para>
239+
</listitem>
235240
</itemizedlist>
236241
</sect3>
237242
</sect2>

language/predefined/interfaces.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
&language.predefined.traversable;
1515
&language.predefined.iterator;
1616
&language.predefined.iteratoraggregate;
17+
&language.predefined.internaliterator;
1718
&language.predefined.throwable;
1819
&language.predefined.arrayaccess;
1920
&language.predefined.serializable;
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<phpdoc:classref xml:id="class.internaliterator" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
3+
<title>The InternalIterator class</title>
4+
<titleabbrev>InternalIterator</titleabbrev>
5+
6+
<partintro>
7+
8+
<!-- {{{ InternalIterator intro -->
9+
<section xml:id="internaliterator.intro">
10+
&reftitle.intro;
11+
<para>
12+
Class to ease implementing <interfacename>IteratorAggregate</interfacename>
13+
for <emphasis>interal</emphasis> classes.
14+
</para>
15+
</section>
16+
<!-- }}} -->
17+
18+
<section xml:id="internaliterator.synopsis">
19+
&reftitle.classsynopsis;
20+
21+
<!-- {{{ Synopsis -->
22+
<classsynopsis>
23+
<ooclass><classname>InternalIterator</classname></ooclass>
24+
25+
<!-- {{{ Class synopsis -->
26+
<classsynopsisinfo>
27+
<ooclass>
28+
<classname>InternalIterator</classname>
29+
</ooclass>
30+
31+
<ooclass>
32+
<modifier>extends</modifier>
33+
<classname>Iterator</classname>
34+
</ooclass>
35+
</classsynopsisinfo>
36+
<!-- }}} -->
37+
38+
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
39+
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.internaliterator')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[not(@role='procedural')])"><xi:fallback/></xi:include>
40+
</classsynopsis>
41+
<!-- }}} -->
42+
43+
</section>
44+
45+
</partintro>
46+
47+
&language.predefined.internaliterator.construct;
48+
&language.predefined.internaliterator.current;
49+
&language.predefined.internaliterator.key;
50+
&language.predefined.internaliterator.next;
51+
&language.predefined.internaliterator.rewind;
52+
&language.predefined.internaliterator.valid;
53+
54+
</phpdoc:classref>
55+
<!-- Keep this comment at the end of the file
56+
Local variables:
57+
mode: sgml
58+
sgml-omittag:t
59+
sgml-shorttag:t
60+
sgml-minimize-attributes:nil
61+
sgml-always-quote-attributes:t
62+
sgml-indent-step:1
63+
sgml-indent-data:t
64+
indent-tabs-mode:nil
65+
sgml-parent-document:nil
66+
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
67+
sgml-exposed-tags:nil
68+
sgml-local-catalogs:nil
69+
sgml-local-ecat-files:nil
70+
End:
71+
vim600: syn=xml fen fdm=syntax fdl=2 si
72+
vim: et tw=78 syn=sgml
73+
vi: ts=1 sw=1
74+
-->
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<refentry xml:id="internaliterator.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
3+
<refnamediv>
4+
<refname>InternalIterator::__construct</refname>
5+
<refpurpose>Private constructor to disallow direct instantiation</refpurpose>
6+
</refnamediv>
7+
8+
<refsect1 role="description">
9+
&reftitle.description;
10+
<constructorsynopsis>
11+
<modifier>private</modifier> <methodname>InternalIterator::__construct</methodname>
12+
<void />
13+
</constructorsynopsis>
14+
</refsect1>
15+
16+
<refsect1 role="parameters">
17+
&reftitle.parameters;
18+
&no.function.parameters;
19+
</refsect1>
20+
</refentry>
21+
<!-- Keep this comment at the end of the file
22+
Local variables:
23+
mode: sgml
24+
sgml-omittag:t
25+
sgml-shorttag:t
26+
sgml-minimize-attributes:nil
27+
sgml-always-quote-attributes:t
28+
sgml-indent-step:1
29+
sgml-indent-data:t
30+
indent-tabs-mode:nil
31+
sgml-parent-document:nil
32+
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
33+
sgml-exposed-tags:nil
34+
sgml-local-catalogs:nil
35+
sgml-local-ecat-files:nil
36+
End:
37+
vim600: syn=xml fen fdm=syntax fdl=2 si
38+
vim: et tw=78 syn=sgml
39+
vi: ts=1 sw=1
40+
-->
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<refentry xml:id="internaliterator.current" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
3+
<refnamediv>
4+
<refname>InternalIterator::current</refname>
5+
<refpurpose>Return the current element</refpurpose>
6+
</refnamediv>
7+
8+
<refsect1 role="description">
9+
&reftitle.description;
10+
<methodsynopsis>
11+
<modifier>public</modifier> <type>mixed</type><methodname>InternalIterator::current</methodname>
12+
<void />
13+
</methodsynopsis>
14+
<para>
15+
Returns the current element.
16+
</para>
17+
</refsect1>
18+
19+
<refsect1 role="parameters">
20+
&reftitle.parameters;
21+
&no.function.parameters;
22+
</refsect1>
23+
24+
<refsect1 role="returnvalues">
25+
&reftitle.returnvalues;
26+
<para>
27+
Returns the current element.
28+
</para>
29+
</refsect1>
30+
</refentry>
31+
<!-- Keep this comment at the end of the file
32+
Local variables:
33+
mode: sgml
34+
sgml-omittag:t
35+
sgml-shorttag:t
36+
sgml-minimize-attributes:nil
37+
sgml-always-quote-attributes:t
38+
sgml-indent-step:1
39+
sgml-indent-data:t
40+
indent-tabs-mode:nil
41+
sgml-parent-document:nil
42+
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
43+
sgml-exposed-tags:nil
44+
sgml-local-catalogs:nil
45+
sgml-local-ecat-files:nil
46+
End:
47+
vim600: syn=xml fen fdm=syntax fdl=2 si
48+
vim: et tw=78 syn=sgml
49+
vi: ts=1 sw=1
50+
-->
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<refentry xml:id="internaliterator.key" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
3+
<refnamediv>
4+
<refname>InternalIterator::key</refname>
5+
<refpurpose>Return the key of the current element</refpurpose>
6+
</refnamediv>
7+
8+
<refsect1 role="description">
9+
&reftitle.description;
10+
<methodsynopsis>
11+
<modifier>public</modifier> <type>mixed</type><methodname>InternalIterator::key</methodname>
12+
<void />
13+
</methodsynopsis>
14+
<para>
15+
Returns the key of the current element.
16+
</para>
17+
</refsect1>
18+
19+
<refsect1 role="parameters">
20+
&reftitle.parameters;
21+
&no.function.parameters;
22+
</refsect1>
23+
24+
<refsect1 role="returnvalues">
25+
&reftitle.returnvalues;
26+
<para>
27+
Returns the key of the current element.
28+
</para>
29+
</refsect1>
30+
</refentry>
31+
<!-- Keep this comment at the end of the file
32+
Local variables:
33+
mode: sgml
34+
sgml-omittag:t
35+
sgml-shorttag:t
36+
sgml-minimize-attributes:nil
37+
sgml-always-quote-attributes:t
38+
sgml-indent-step:1
39+
sgml-indent-data:t
40+
indent-tabs-mode:nil
41+
sgml-parent-document:nil
42+
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
43+
sgml-exposed-tags:nil
44+
sgml-local-catalogs:nil
45+
sgml-local-ecat-files:nil
46+
End:
47+
vim600: syn=xml fen fdm=syntax fdl=2 si
48+
vim: et tw=78 syn=sgml
49+
vi: ts=1 sw=1
50+
-->
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<refentry xml:id="internaliterator.next" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
3+
<refnamediv>
4+
<refname>InternalIterator::next</refname>
5+
<refpurpose>Move forward to next element</refpurpose>
6+
</refnamediv>
7+
8+
<refsect1 role="description">
9+
&reftitle.description;
10+
<methodsynopsis>
11+
<modifier>public</modifier> <type>void</type><methodname>InternalIterator::next</methodname>
12+
<void />
13+
</methodsynopsis>
14+
<para>
15+
Moves the current position to the next element.
16+
</para>
17+
</refsect1>
18+
19+
<refsect1 role="parameters">
20+
&reftitle.parameters;
21+
&no.function.parameters;
22+
</refsect1>
23+
24+
<refsect1 role="returnvalues">
25+
&reftitle.returnvalues;
26+
<para>
27+
&return.void;
28+
</para>
29+
</refsect1>
30+
</refentry>
31+
<!-- Keep this comment at the end of the file
32+
Local variables:
33+
mode: sgml
34+
sgml-omittag:t
35+
sgml-shorttag:t
36+
sgml-minimize-attributes:nil
37+
sgml-always-quote-attributes:t
38+
sgml-indent-step:1
39+
sgml-indent-data:t
40+
indent-tabs-mode:nil
41+
sgml-parent-document:nil
42+
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
43+
sgml-exposed-tags:nil
44+
sgml-local-catalogs:nil
45+
sgml-local-ecat-files:nil
46+
End:
47+
vim600: syn=xml fen fdm=syntax fdl=2 si
48+
vim: et tw=78 syn=sgml
49+
vi: ts=1 sw=1
50+
-->
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<refentry xml:id="internaliterator.rewind" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
3+
<refnamediv>
4+
<refname>InternalIterator::rewind</refname>
5+
<refpurpose>Rewind the Iterator to the first element</refpurpose>
6+
</refnamediv>
7+
8+
<refsect1 role="description">
9+
&reftitle.description;
10+
<methodsynopsis>
11+
<modifier>public</modifier> <type>void</type><methodname>InternalIterator::rewind</methodname>
12+
<void />
13+
</methodsynopsis>
14+
<para>
15+
Rewinds back to the first element of the Iterator.
16+
</para>
17+
</refsect1>
18+
19+
<refsect1 role="parameters">
20+
&reftitle.parameters;
21+
&no.function.parameters;
22+
</refsect1>
23+
24+
<refsect1 role="returnvalues">
25+
&reftitle.returnvalues;
26+
<para>
27+
&return.void;
28+
</para>
29+
</refsect1>
30+
</refentry>
31+
<!-- Keep this comment at the end of the file
32+
Local variables:
33+
mode: sgml
34+
sgml-omittag:t
35+
sgml-shorttag:t
36+
sgml-minimize-attributes:nil
37+
sgml-always-quote-attributes:t
38+
sgml-indent-step:1
39+
sgml-indent-data:t
40+
indent-tabs-mode:nil
41+
sgml-parent-document:nil
42+
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
43+
sgml-exposed-tags:nil
44+
sgml-local-catalogs:nil
45+
sgml-local-ecat-files:nil
46+
End:
47+
vim600: syn=xml fen fdm=syntax fdl=2 si
48+
vim: et tw=78 syn=sgml
49+
vi: ts=1 sw=1
50+
-->
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<refentry xml:id="internaliterator.valid" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
3+
<refnamediv>
4+
<refname>InternalIterator::valid</refname>
5+
<refpurpose>Check if current position is valid</refpurpose>
6+
</refnamediv>
7+
8+
<refsect1 role="description">
9+
&reftitle.description;
10+
<methodsynopsis>
11+
<modifier>public</modifier> <type>bool</type><methodname>InternalIterator::valid</methodname>
12+
<void />
13+
</methodsynopsis>
14+
<para>
15+
Checks if current position is valid.
16+
</para>
17+
</refsect1>
18+
19+
<refsect1 role="parameters">
20+
&reftitle.parameters;
21+
&no.function.parameters;
22+
</refsect1>
23+
24+
<refsect1 role="returnvalues">
25+
&reftitle.returnvalues;
26+
<para>
27+
Returns whether the current position is valid.
28+
</para>
29+
</refsect1>
30+
</refentry>
31+
<!-- Keep this comment at the end of the file
32+
Local variables:
33+
mode: sgml
34+
sgml-omittag:t
35+
sgml-shorttag:t
36+
sgml-minimize-attributes:nil
37+
sgml-always-quote-attributes:t
38+
sgml-indent-step:1
39+
sgml-indent-data:t
40+
indent-tabs-mode:nil
41+
sgml-parent-document:nil
42+
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
43+
sgml-exposed-tags:nil
44+
sgml-local-catalogs:nil
45+
sgml-local-ecat-files:nil
46+
End:
47+
vim600: syn=xml fen fdm=syntax fdl=2 si
48+
vim: et tw=78 syn=sgml
49+
vi: ts=1 sw=1
50+
-->

0 commit comments

Comments
 (0)