:py:mod:`cyclonedx._internal.compare`
=====================================

.. py:module:: cyclonedx._internal.compare

.. autoapi-nested-parse::

   !!! ALL SYMBOLS IN HERE ARE INTERNAL.
   Everything might change without any notice.



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

Classes
~~~~~~~

.. autoapisummary::

   cyclonedx._internal.compare.ComparableTuple
   cyclonedx._internal.compare.ComparableDict
   cyclonedx._internal.compare.ComparablePackageURL




.. py:class:: ComparableTuple


   Bases: :py:obj:`tuple`\ [\ :py:obj:`Optional`\ [\ :py:obj:`Any`\ ]\ , :py:obj:`Ellipsis`\ ]

   Allows comparison of tuples, allowing for None values.

   .. py:method:: count()

      Return number of occurrences of value.


   .. py:method:: index()

      Return first index of value.

      Raises ValueError if the value is not present.



.. py:class:: ComparableDict


   Bases: :py:obj:`ComparableTuple`

   Allows comparison of dictionaries, allowing for missing/None values.

   .. py:method:: count()

      Return number of occurrences of value.


   .. py:method:: index()

      Return first index of value.

      Raises ValueError if the value is not present.



.. py:class:: ComparablePackageURL


   Bases: :py:obj:`ComparableTuple`

   Allows comparison of PackageURL, allowing for qualifiers.

   .. py:method:: count()

      Return number of occurrences of value.


   .. py:method:: index()

      Return first index of value.

      Raises ValueError if the value is not present.



