-
Notifications
You must be signed in to change notification settings - Fork 709
/
slice.xml
155 lines (138 loc) · 3.41 KB
/
slice.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="ds-map.slice" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Ds\Map::slice</refname>
<refpurpose>
Returns a subset of the map defined by a starting index and length
</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>Ds\Map</type><methodname>Ds\Map::slice</methodname>
<methodparam><type>int</type><parameter>index</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>length</parameter></methodparam>
</methodsynopsis>
<para>
Returns a subset of the map defined by a starting <parameter>index</parameter> and <parameter>length</parameter>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>index</parameter></term>
<listitem>
<para>
The index at which the range starts.
</para>
<para>
If positive, the range will start at that index in the map.
If negative, the range will start that far from the end.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>length</parameter></term>
<listitem>
<para>
If a length is given and is positive, the resulting
map will have up to that many pairs in it.
If a length is given and is negative, the range
will stop that many pairs from the end.
If the length results in an overflow, only
pairs up to the end of the map will be included.
If a length is not provided, the resulting map
will contain all pairs between the index and the
end of the map.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
A subset of the map defined by a starting index and length.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>Ds\Map::slice</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
$map = new \Ds\Map(["a" => 1, "b" => 2, "c" => 3, "d" => 4, "e" => 5]);
// Slice from 2 onwards
print_r($map->slice(2)->toArray());
// Slice from 1, for a length of 3
print_r($map->slice(1, 3)->toArray());
// Slice from 1 onwards
print_r($map->slice(1)->toArray());
// Slice from 2 from the end onwards
print_r($map->slice(-2)->toArray());
// Slice from 1 to 1 from the end
print_r($map->slice(1, -1)->toArray());
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
Array
(
[c] => 3
[d] => 4
[e] => 5
)
Array
(
[b] => 2
[c] => 3
[d] => 4
)
Array
(
[b] => 2
[c] => 3
[d] => 4
[e] => 5
)
Array
(
[d] => 4
[e] => 5
)
Array
(
[b] => 2
[c] => 3
[d] => 4
)
]]>
</screen>
</example>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->