#![allow(unsafe_code, unreachable_pub)]
#![doc = include_str!("../README.md")]
mod com_guard;
pub use com_guard::ComGuard;
mod helpers;
#[cfg(feature = "opc-da-backend")]
mod native_browse;
mod provider;
#[cfg(feature = "opc-da-backend")]
#[allow(warnings)]
mod bindings;
pub mod com_worker;
#[cfg(feature = "opc-da-backend")]
#[allow(warnings)]
mod opc_da;
#[cfg(feature = "opc-da-backend")]
mod backend;
pub use helpers::{format_hresult, friendly_com_hint, log_opc_error};
pub use provider::{
BrowseCapabilities, BrowseNamespace, BrowseNode, BrowseNodeFilter, BrowseNodeKind,
BrowseNodeToken, BrowsePage, BrowsePageRequest, BrowsePageToken, BrowseSessionToken,
OpcProvider, OpcValue, TagValue, WriteResult,
};
#[cfg(feature = "opc-da-backend")]
pub use opc_da::{
errors::{OpcError, OpcResult},
typedefs::{GroupHandle, ItemHandle},
};
#[cfg(feature = "opc-da-backend")]
pub use backend::{connector::ComConnector, opc_da::OpcDaClient};
#[cfg(feature = "test-support")]
pub use provider::MockOpcProvider;