Skip to content

Commit c28d3c5

Browse files
asmeurerkgryte
andauthored
docs: add note that iteration is defined for 1-D arrays
PR-URL: #821 Co-authored-by: Athan Reines <[email protected]> Reviewed-by: Athan Reines <[email protected]>
1 parent 1765933 commit c28d3c5

File tree

4 files changed

+20
-0
lines changed

4 files changed

+20
-0
lines changed

src/array_api_stubs/_2021_12/array_object.py

+4
Original file line numberDiff line numberDiff line change
@@ -465,6 +465,8 @@ def __getitem__(
465465
"""
466466
Returns ``self[key]``.
467467
468+
See :ref:`indexing` for details on supported indexing semantics.
469+
468470
Parameters
469471
----------
470472
self: array
@@ -914,6 +916,8 @@ def __setitem__(
914916
"""
915917
Sets ``self[key]`` to ``value``.
916918
919+
See :ref:`indexing` for details on supported indexing semantics.
920+
917921
Parameters
918922
----------
919923
self: array

src/array_api_stubs/_2022_12/array_object.py

+4
Original file line numberDiff line numberDiff line change
@@ -489,6 +489,8 @@ def __getitem__(
489489
"""
490490
Returns ``self[key]``.
491491
492+
See :ref:`indexing` for details on supported indexing semantics.
493+
492494
Parameters
493495
----------
494496
self: array
@@ -937,6 +939,8 @@ def __setitem__(
937939
"""
938940
Sets ``self[key]`` to ``value``.
939941
942+
See :ref:`indexing` for details on supported indexing semantics.
943+
940944
Parameters
941945
----------
942946
self: array

src/array_api_stubs/_2023_12/array_object.py

+4
Original file line numberDiff line numberDiff line change
@@ -616,6 +616,8 @@ def __getitem__(
616616
"""
617617
Returns ``self[key]``.
618618
619+
See :ref:`indexing` for details on supported indexing semantics.
620+
619621
Parameters
620622
----------
621623
self: array
@@ -1085,6 +1087,8 @@ def __setitem__(
10851087
"""
10861088
Sets ``self[key]`` to ``value``.
10871089
1090+
See :ref:`indexing` for details on supported indexing semantics.
1091+
10881092
Parameters
10891093
----------
10901094
self: array

src/array_api_stubs/_draft/array_object.py

+8
Original file line numberDiff line numberDiff line change
@@ -616,6 +616,8 @@ def __getitem__(
616616
"""
617617
Returns ``self[key]``.
618618
619+
See :ref:`indexing` for details on supported indexing semantics.
620+
619621
Parameters
620622
----------
621623
self: array
@@ -627,6 +629,10 @@ def __getitem__(
627629
-------
628630
out: array
629631
an array containing the accessed value(s). The returned array must have the same data type as ``self``.
632+
633+
.. note::
634+
When ``__getitem__`` is defined on an object, Python will automatically define iteration (i.e., the behavior from ``iter(x)``) as ``x[0]``, ``x[1]``, ..., ``x[N-1]``. This can also be implemented directly by defining ``__iter__``. Therefore, for a one-dimensional array ``x``, iteration should produce a sequence of zero-dimensional arrays ``x[0]``, ``x[1]``, ..., ``x[N-1]``, where ``N`` is the number of elements in the array. Iteration behavior for arrays having zero dimensions or more than one dimension is unspecified and thus implementation-defined.
635+
630636
"""
631637

632638
def __gt__(self: array, other: Union[int, float, array], /) -> array:
@@ -1085,6 +1091,8 @@ def __setitem__(
10851091
"""
10861092
Sets ``self[key]`` to ``value``.
10871093
1094+
See :ref:`indexing` for details on supported indexing semantics.
1095+
10881096
Parameters
10891097
----------
10901098
self: array

0 commit comments

Comments
 (0)