# This code is part of Qiskit.
#
# (C) Copyright IBM 2017, 2021.
#
# obtain a copy of this license in the LICENSE.txt file in the root directory
#
# Any modifications or derivative works of this code must retain this
# copyright notice, and modified files need to carry a notice indicating
# that they have been altered from the originals.

"""
Mixin for gate operator interface.
"""

from abc import ABC, abstractmethod

"""Abstract Mixin for operator adjoint and transpose operations.

This class defines the following methods

- :meth:transpose
- :meth:conjugate
- :meth:adjoint

The following abstract methods must be implemented by subclasses
using this mixin

- conjugate(self)
- transpose(self)
"""