boost::multi

Main namespace for the library

Description

Convenience aliases using std::pmr::polymorphic_allocator as the allocator.

Namespaces

Name

Description

elementwise

Namespace for elementwise operators (+, ‐, *, and other convenience functions)

pmr

Convenience aliases using std::pmr::polymorphic_allocator as the allocator.

Types

Name

Description

array

A multidimensional array value

array_ref

A D‐dimensional view of a contiguous, pre‐existing memory buffer.

const_subarray

Read‐only D‐dimensional subarray‐reference (view into a subarray)

dynamic_array

A D‐dimensional array whose size is bound at construction and never changes.

move_subarray

Movable D‐dimensional view into part or all of an array (elements can be moved when dereferenced and assigned)

restriction

An array interface for a function of D integer arguments restricted to an certain Cartesian grid (extents), elements are generated lazily

subarray

Mutable D‐dimensional view into part or all of an array

unique_array

A D‐dimensional array that is move only (cannot be copied into another unique_array)

Type Aliases

Name

Description

array_cref

Convenience alias for a D‐dimensional view of a contiguous, pre‐existing memory constant memory buffer

array_iterator [deprecated]

array_ptr [deprecated]

inplace_array

Stack‐allocated multidimensional array whose maximum size is encoded in the element type T (no efficient moves, assignments and constructions are all O(N))

static_array [deprecated]

Functions

Name

Description

begin

returns an iterator to the beginning of the given range (including r‐value subarrays).

cbegin

returns an const‐iterator to the beginning of the given range (including r‐value subarrays).

cend

returns an const‐iterator to the end of the given range (including r‐value subarrays).

end

returns an iterator to the end of the given range (including r‐value subarrays).

move

yields an array reference marked for move; for subarrays (including r‐value subarrays), its elements are marked as movable, for array values this has the same effect as std::move.

operatorˆ

creates a restriction of D dimensions of a function that takes D arguments given an extents of Cartesian indices.

restricted

creates a restriction of D dimensions of a function that takes D arguments given an extents of Cartesian indices.

rotated

size

static_array_cast

stride

operator<<

Stream insertion operators

Variables

Name

Description

force_element_trivial

When specialized to true for an element type, the library treats that type as if it were trivially default‐constructible and trivially destructible. This is a performance opt‐in for types that are technically non‐trivial under the language rules (such as std::complex).

force_element_trivial_default_construction

When specialized to true, skip the per‐element default‐construction loop on array allocation.

force_element_trivial_destruction

When specialized to true, skip the per‐element destructor loop on array teardown.

Created with MrDocs