Constructors¶
-
libsemigroups::BMat8::BMat8() noexcept = default¶
Default constructor.
There is no guarantee about the contents of the matrix constructed.
- Parameters
(None)
- Complexity
Constant.
- Throws
(None) – This function is
noexcept
and is guaranteed never to throw.
-
libsemigroups::BMat8::BMat8(BMat8 const&) noexcept = default¶
Default copy constructor.
- Complexity
Constant.
- Throws
(None) – This function is
noexcept
and is guaranteed never to throw.
-
libsemigroups::BMat8::BMat8(BMat8&&) noexcept = default¶
Default move constructor.
- Complexity
Constant.
- Throws
(None) – This function is
noexcept
and is guaranteed never to throw.
-
explicit libsemigroups::BMat8::BMat8(std::vector<std::vector<bool>> const &mat)¶
A constructor.
This constructor initializes a matrix where the rows of the matrix are the vectors in
mat
.- Complexity
Constant.
- Parameters
mat – the vector of vectors representation of the matrix being constructed.
- Throws
LibsemigroupsException – if
mat
has 0 rows.LibsemigroupsException – if
mat
has more than 8 rows.LibsemigroupsException – if the rows of
mat
are not all of the same length.
-
inline explicit libsemigroups::BMat8::BMat8(uint64_t mat) noexcept¶
Construct from uint64_t.
This constructor initializes a BMat8 to have rows equal to the 8 chunks, of 8 bits each, of the binary representation of
mat
.- Complexity
Constant.
- Parameters
mat – the integer representation of the matrix being constructed.
- Throws
(None) – This function is
noexcept
and is guaranteed never to throw.