from importlib.metadata import version, PackageNotFoundError
from ._modbus_rs import (
TcpClient,
AsyncTcpClient,
SerialClient,
AsyncSerialClient,
ModbusApp,
AsyncTcpServer,
TcpServer,
AsyncSerialServer,
SerialServer,
ModbusError,
ModbusTimeout,
ModbusConnectionError,
ModbusProtocolError,
ModbusDeviceException,
ModbusConfigError,
ModbusInvalidArgument,
)
try:
from ._modbus_rs import ( AsyncTcpGateway,
GatewayEventHandler,
TcpGateway,
)
_GATEWAY_AVAILABLE = True
except ImportError:
_GATEWAY_AVAILABLE = False
try:
__version__ = version("modbus-rs")
except PackageNotFoundError:
__version__ = "0.0.0+unknown"
__all__ = [
"TcpClient",
"AsyncTcpClient",
"SerialClient",
"AsyncSerialClient",
"ModbusApp",
"AsyncTcpServer",
"TcpServer",
"AsyncSerialServer",
"SerialServer",
"ModbusError",
"ModbusTimeout",
"ModbusConnectionError",
"ModbusProtocolError",
"ModbusDeviceException",
"ModbusConfigError",
"ModbusInvalidArgument",
]
if _GATEWAY_AVAILABLE:
__all__ += [
"AsyncTcpGateway",
"GatewayEventHandler",
"TcpGateway",
]