DynamicPTransf

template<typename Scalar>
class DynamicPTransf : public libsemigroups::detail::PTransfBase<Scalar, std::vector<Scalar>>

Defined in transf.hpp.

Dynamic partial transformations.

This is a class for partial transformations where the number of points acted on (the degree) can be set at run time.

Template Parameters

Scalar – a unsigned integer type.

Member types

const_iterator

Type of const iterators point to image values.

container_type

Type of the underlying container.

iterator

Type of iterators point to image values.

value_type

Type of the image values.

Constructors

DynamicPTransf(size_t)

Construct with given degree.

Static member functions

identity() const

Returns the identity transformation on degree() points.

identity(size_t)

Returns the identity transformation on the given number of points.

make(TContainerAgain &&)

Construct from a container and validates.

make(std::initializer_list< value_type > const &)

Construct from an initializer list.

Modifiers and accessors

at(size_t)

Get a reference to the image of a point.

at(size_t) const

Get a const reference to the image of a point.

increase_degree_by(size_t)

Increase the degree in-place.

operator[](size_t)

Get a reference to the image of a point.

operator[](size_t) const

Get a const reference to the image of a point.

swap(PTransfBase &) noexcept

Swap with another partial transformation.

Iterators

begin() const noexcept

Returns a const_iterator (random access iterator) pointing at the first image value.

begin() noexcept

Returns an iterator (random access iterator) pointing at the first image value.

cbegin() const noexcept

Returns a const_iterator (random access iterator) pointing at the first image value.

cend() const noexcept

Returns a const_iterator (random access iterator) pointing one past the last image value.

end() const noexcept

Returns a const_iterator (random access iterator) pointing one past the last image value.

end() noexcept

Returns an iterator (random access iterator) pointing one past the last image value.

Operators

operator!=(PTransfBase const &) const

Compare for inequality.

operator*(TSubclass const &) const

Multiply by another partial transformation.

operator<(PTransfBase const &) const

Compare for less.

operator<=(PTransfBase const &) const

Compare for less than or equal.

operator==(PTransfBase const &) const

Compare for equality.

operator>(PTransfBase const &) const

Compare for greater.

operator>=(PTransfBase const &) const

Compare for greater than or equal.

Other member functions

degree() const noexcept

Returns the degree of a partial transformation.

hash_value() const

Returns a hash value.

rank() const

Returns the number of distinct image values.

undef() noexcept

Returns the value used to represent “undefined”.