BroadcastIterator ================= .. cpp:class:: numpy::BroadcastIterator Iterator class for array traversal. Example ------- .. code-block:: cpp #include using namespace numpy; // Use BroadcastIterator NDArray arr = np::arange(12).reshape({3, 4}); for (auto it = arr.begin(); it != arr.end(); ++it) { // ... process elements ... } Constructors ------------ .. list-table:: :widths: 55 25 20 :header-rows: 1 * - Signature - Location - Example * - ``BroadcastIterator(Arrays &...arrays)`` - NP_VECTORIZE_BROADCAST.H:48 - Operators --------- .. list-table:: :widths: 40 25 15 20 :header-rows: 1 * - Signature - Return Type - Location - Example * - ``value_type operator\*()`` - value_type - NP_VECTORIZE_BROADCAST.H:61 - * - ``BroadcastIterator & operator++()`` - BroadcastIterator & - NP_VECTORIZE_BROADCAST.H:68 - * - ``BroadcastIterator operator++(int)`` - BroadcastIterator - NP_VECTORIZE_BROADCAST.H:81 - * - ``bool operator==(const BroadcastIterator &other)`` - bool - NP_VECTORIZE_BROADCAST.H:90 - * - ``bool operator!=(const BroadcastIterator &other)`` - bool - NP_VECTORIZE_BROADCAST.H:99 - Indexing / Selection -------------------- .. list-table:: :widths: 40 20 15 25 :header-rows: 1 * - Signature - Return Type - Location - Example * - ``auto & getArrayElement()`` - auto & - NP_VECTORIZE_BROADCAST.H:212 - * - ``const std::vector& getBroadcastShape()`` - const std::vector& - NP_VECTORIZE_BROADCAST.H:111 - * - ``value_type getCurrentElements(std::index_sequence)`` - value_type - NP_VECTORIZE_BROADCAST.H:204 - * - ``size_t getFlatIndex()`` - size_t - NP_VECTORIZE_BROADCAST.H:106 - * - ``void getOriginalShapes(std::index_sequence)`` - void - NP_VECTORIZE_BROADCAST.H:147 - * - ``size_t getTotalSize()`` - size_t - NP_VECTORIZE_BROADCAST.H:118 - Testing ------- .. list-table:: :widths: 40 20 15 25 :header-rows: 1 * - Signature - Return Type - Location - Example * - ``void calculateStrides()`` - void - NP_VECTORIZE_BROADCAST.H:155 - * - ``void calculateStridesImpl(std::index_sequence)`` - void - NP_VECTORIZE_BROADCAST.H:162 - Other Methods ------------- .. list-table:: :widths: 40 20 15 25 :header-rows: 1 * - Signature - Return Type - Location - Example * - ``void calculateArrayStrides()`` - void - NP_VECTORIZE_BROADCAST.H:167 - * - ``void initializeBroadcasting()`` - void - NP_VECTORIZE_BROADCAST.H:129 - * - ``bool isEnd()`` - bool - NP_VECTORIZE_BROADCAST.H:123 - * - ``void updateMultiIndex()`` - void - NP_VECTORIZE_BROADCAST.H:193 -