libsemigroups  v3.0.0
C++ library for semigroups and monoids
Loading...
Searching...
No Matches

This page contains documentation related to safely constructing a PBR instance.

See also
The `make` function for an overview of possible uses of the make function.

Functions

template<typename Return>
enable_if_is_same< Return, PBRmake (PBR::initializer_list_type< int32_t > left, PBR::initializer_list_type< int32_t > right)
 Construct and check a PBR.
 
template<typename Return>
enable_if_is_same< Return, PBRmake (PBR::initializer_list_type< uint32_t > args)
 Construct and check a PBR.
 
template<typename Return>
enable_if_is_same< Return, PBRmake (PBR::vector_type< int32_t > left, PBR::vector_type< int32_t > right)
 Construct and check a PBR.
 

Function Documentation

◆ make() [1/3]

template<typename Return>
enable_if_is_same< Return, PBR > make ( PBR::initializer_list_type< int32_t > left,
PBR::initializer_list_type< int32_t > right )
nodiscard

Construct and check a PBR.

Template Parameters
Returnthe return type. Must satisfy std::is_same<Return, PBR>.
Parameters
leftthe 1st argument to forward to the constructor.
rightthe 2nd argument to forward to the constructor.
Returns
A PBR constructed from args and checked.
Exceptions
LibsemigroupsExceptionif libsemigroups::throw_if_invalid(PBR const&) throws when called with the constructed PBR.
Warning
No checks are performed on the validity of left or right prior to the construction of the PBR object.
See also
PBR(initializer_list_type<int32_t>, initializer_list_type<int32_t>).

◆ make() [2/3]

template<typename Return>
enable_if_is_same< Return, PBR > make ( PBR::initializer_list_type< uint32_t > args)
nodiscard

Construct and check a PBR.

Template Parameters
Returnthe return type. Must satisfy std::is_same<Return, PBR>.
Parameters
argsthe arguments to forward to the constructor.
Returns
A PBR constructed from args and checked.
Exceptions
LibsemigroupsExceptionif libsemigroups::throw_if_invalid(PBR const&) throws when called with the constructed PBR.
Warning
No checks are performed on the validity of args prior to the construction of the PBR object.
See also
PBR(initializer_list_type<uint32_t>).

◆ make() [3/3]

template<typename Return>
enable_if_is_same< Return, PBR > make ( PBR::vector_type< int32_t > left,
PBR::vector_type< int32_t > right )
nodiscard

Construct and check a PBR.

Template Parameters
Returnthe return type. Must satisfy std::is_same<Return, PBR>.
Parameters
leftthe 1st argument to forward to the constructor.
rightthe 2nd argument to forward to the constructor.
Returns
A PBR constructed from args and checked.
Exceptions
LibsemigroupsExceptionif libsemigroups::throw_if_invalid(PBR const&) throws when called with the constructed PBR.
Warning
No checks are performed on the validity of left or right prior to the construction of the PBR object.
See also
PBR(initializer_list_type<int32_t>, initializer_list_type<int32_t>).