.. Copyright (c) 2019-22, J. D. Mitchell

   Distributed under the terms of the GPL license version 3.

   The full license is in the file LICENSE, distributed with this software.

   This file was auto-generated by docs/generate_from_yml.py, do not edit.

Bipartition
===========

.. doxygenclass:: libsemigroups::Bipartition
   :project: libsemigroups

.. cpp:namespace:: libsemigroups::Bipartition


Member types
------------
.. list-table::
   :widths: 50 50
   :header-rows: 0

   * - :cpp:member:`const_iterator`
     - 
   * - :cpp:member:`iterator`
     - 
   * - :cpp:member:`lookup_const_iterator`
     - 

Constructors
------------
.. list-table::
   :widths: 50 50
   :header-rows: 0

   * - :cpp:member:`Bipartition() <Bipartition::Bipartition()>`
     - Constructs an uninitialised bipartition of degree ``0``.


   * - :cpp:member:`Bipartition(Bipartition const&)`
     - Default copy constructor.


   * - :cpp:member:`Bipartition(Bipartition&&)`
     - Default move constructor.


   * - :cpp:member:`Bipartition(size_t)`
     - 
   * - :cpp:member:`Bipartition(std::initializer_list<std::vector<int32_t>> const&)`
     - 
   * - :cpp:member:`Bipartition(std::initializer_list<uint32_t> const&)`
     - 
   * - :cpp:member:`Bipartition(std::vector<uint32_t> const&)`
     - 
   * - :cpp:member:`Bipartition(std::vector<uint32_t>&&)`
     - 
   * - :cpp:member:`operator=(Bipartition const&)`
     - Default copy assignment operator.


   * - :cpp:member:`operator=(Bipartition&&)`
     - Default move assignment operator.



Static member functions
-----------------------
.. list-table::
   :widths: 50 50
   :header-rows: 0

   * - :cpp:member:`identity(size_t)`
     - 
   * - :cpp:member:`make(T const&) <template <typename T> Bipartition make(T const&)>`
     - 
   * - :cpp:member:`make(std::initializer_list<std::vector<int32_t>> const &)`
     - 
   * - :cpp:member:`make(std::initializer_list<uint32_t> const&)`
     - 

Operators
---------
.. list-table::
   :widths: 50 50
   :header-rows: 0

   * - :cpp:member:`operator<(Bipartition const&) const`
     - 
   * - :cpp:member:`operator==(Bipartition const&) const`
     - 
   * - :cpp:member:`product_inplace(Bipartition const&, Bipartition const&, size_t)`
     - 

Accessors
---------
.. list-table::
   :widths: 50 50
   :header-rows: 0

   * - :cpp:member:`at(size_t)`
     - 
   * - :cpp:member:`at(size_t) const`
     - 
   * - :cpp:member:`operator[](size_t)`
     - 
   * - :cpp:member:`operator[](size_t) const`
     - 

Iterators
---------
.. list-table::
   :widths: 50 50
   :header-rows: 0

   * - :cpp:member:`cbegin() const noexcept`
     - 
   * - :cpp:member:`cbegin_left_blocks() const noexcept`
     - 
   * - :cpp:member:`cbegin_lookup() noexcept`
     - 
   * - :cpp:member:`cbegin_right_blocks() const noexcept`
     - 
   * - :cpp:member:`cend() const noexcept`
     - 
   * - :cpp:member:`cend_left_blocks() const noexcept`
     - 
   * - :cpp:member:`cend_lookup() noexcept`
     - 
   * - :cpp:member:`cend_right_blocks() const noexcept`
     - 

Getters
-------
.. list-table::
   :widths: 50 50
   :header-rows: 0

   * - :cpp:member:`degree() const noexcept`
     - 
   * - :cpp:member:`hash_value() const`
     - 
   * - :cpp:member:`identity() const`
     - 
   * - :cpp:member:`is_transverse_block(size_t)`
     - 
   * - :cpp:member:`left_blocks()`
     - 
   * - :cpp:member:`number_of_blocks() const`
     - 
   * - :cpp:member:`number_of_left_blocks()`
     - 
   * - :cpp:member:`number_of_right_blocks()`
     - 
   * - :cpp:member:`rank()`
     - 
   * - :cpp:member:`right_blocks()`
     - 

Setters
-------
.. list-table::
   :widths: 50 50
   :header-rows: 0

   * - :cpp:member:`set_number_of_blocks(size_t) noexcept`
     - 
   * - :cpp:member:`set_number_of_left_blocks(size_t) noexcept`
     - 
   * - :cpp:member:`set_rank(size_t) noexcept`
     - 

.. toctree::
   :hidden:

   libsemigroups__bipartition__member_types.rst
   libsemigroups__bipartition__constructors.rst
   libsemigroups__bipartition__static_member_functions.rst
   libsemigroups__bipartition__operators.rst
   libsemigroups__bipartition__accessors.rst
   libsemigroups__bipartition__iterators.rst
   libsemigroups__bipartition__getters.rst
   libsemigroups__bipartition__setters.rst
