:py:mod:`leads_comm_serial.connection`
======================================

.. py:module:: leads_comm_serial.connection

.. autodoc2-docstring:: leads_comm_serial.connection
   :allowtitles:

Module Contents
---------------

Classes
~~~~~~~

.. list-table::
   :class: autosummary longtable
   :align: left

   * - :py:obj:`SerialConnection <leads_comm_serial.connection.SerialConnection>`
     - .. autodoc2-docstring:: leads_comm_serial.connection.SerialConnection
          :summary:

API
~~~

.. py:class:: SerialConnection(serial: serial.Serial, remainder: bytes = b'', separator: bytes = b';')
   :canonical: leads_comm_serial.connection.SerialConnection

   Bases: :py:obj:`leads.comm.ConnectionBase`

   .. autodoc2-docstring:: leads_comm_serial.connection.SerialConnection

   .. rubric:: Initialization

   .. autodoc2-docstring:: leads_comm_serial.connection.SerialConnection.__init__

   .. py:method:: closed() -> bool
      :canonical: leads_comm_serial.connection.SerialConnection.closed

   .. py:method:: _require_open_serial(mandatory: bool = True) -> serial.Serial
      :canonical: leads_comm_serial.connection.SerialConnection._require_open_serial

      .. autodoc2-docstring:: leads_comm_serial.connection.SerialConnection._require_open_serial

   .. py:method:: receive(chunk_size: int = 1) -> bytes | None
      :canonical: leads_comm_serial.connection.SerialConnection.receive

   .. py:method:: send(msg: bytes | typing.Literal[b'disconnect']) -> None
      :canonical: leads_comm_serial.connection.SerialConnection.send

   .. py:method:: close() -> None
      :canonical: leads_comm_serial.connection.SerialConnection.close

   .. py:method:: suspect(timeout: int = 1) -> typing.Self
      :canonical: leads_comm_serial.connection.SerialConnection.suspect

      .. autodoc2-docstring:: leads_comm_serial.connection.SerialConnection.suspect

   .. py:method:: trust() -> typing.Self
      :canonical: leads_comm_serial.connection.SerialConnection.trust

      .. autodoc2-docstring:: leads_comm_serial.connection.SerialConnection.trust
