Expand description
Shared protocol, codec, error, and runtime support for flare-core.
This module is the stable foundation used by both client and server builds. It intentionally contains transport-neutral building blocks:
protocoldefines the public frame and command model.messageprovides parsers, processors, middleware, and pipelines.serializer,compression, andencryptionprovide pluggable wire transformations.errorexposes typed errors and localized error construction.config_typescontains cross-cutting configuration such as heartbeat, TLS, and transport selection.featuresreports the capability set compiled into the current binary.
Higher-level IM semantics should not be placed here. Keep this module focused on reusable transport and protocol primitives.
Re-exports§
pub use compression::CompressionAlgorithm;pub use compression::CompressionUtil;pub use compression::Compressor;pub use config_types::HeartbeatAppState;pub use config_types::HeartbeatConfig;pub use config_types::TlsConfig;pub use config_types::TransportProtocol;pub use device::DeviceConflictStrategy;pub use device::DeviceConflictStrategyBuilder;pub use device::DeviceInfo;pub use device::DevicePlatform;pub use encryption::EncryptionAlgorithm;pub use encryption::EncryptionUtil;pub use encryption::Encryptor;pub use error::ClientError;pub use error::ErrorBuilder;pub use error::ErrorCode;pub use error::FlareError;pub use error::Result;pub use error::ServerError;pub use features::FeatureSet;pub use message::ArcMessageMiddleware;pub use message::ArcMessageProcessor;pub use message::DelegateProcessor;pub use message::FunctionProcessor;pub use message::LogLevel;pub use message::LoggingMiddleware;pub use message::MessageContext;pub use message::MessageEvent;pub use message::MessageHandler;pub use message::MessageMiddleware;pub use message::MessageParser;pub use message::MessagePipeline;pub use message::MessageProcessor;pub use message::MetricsMiddleware;pub use message::ValidationMiddleware;pub use message_observer::ArcMessageObserver;pub use message_observer::MessageObserver;pub use platform::AES256_KEY_LEN;pub use platform::clear_runtime_encryption_key;pub use platform::default_local_ws_url;pub use platform::format_now_rfc3339;pub use platform::has_runtime_encryption_key;pub use platform::monotonic_now;pub use platform::parse_encryption_key_hex;pub use platform::parse_encryption_key_utf8;pub use platform::register_aes256_encryption;pub use platform::resolve_encryption_key_bytes;pub use platform::runtime_instance_id;pub use platform::set_runtime_encryption_key;pub use platform::wall_clock_ms;pub use platform::web_device_info;pub use protocol::Command;pub use protocol::CustomCommand;pub use protocol::Frame;pub use protocol::NotificationCommand;pub use protocol::PayloadCommand;pub use protocol::Reliability;pub use protocol::SerializationFormat;pub use protocol::SystemCommand;pub use serializer::SerializationUtil;pub use serializer::Serializer;pub use constants::*;pub use conversation::*;pub use utils::*;
Modules§
- cert
- 证书模块
- compression
- 压缩模块
- config_
types - 共享配置类型
- constants
- 常量定义模块
- conversation
- Conversation ID(CID)生成与校验模块(Production Grade)
- device
- 设备平台和设备信息管理
- encryption
- 加密模块
- error
- Flare 错误处理模块
- features
- Compile-time feature capability matrix.
- message
- 消息处理模块
- message_
observer - 标准消息观察者接口
- platform
- 跨平台工具(Native / WASM 差异封装)
- protobuf_
decoder - 安全的 Protobuf 解码器(含粘包处理)
- protocol
- Flare 协议模块
- serializer
- 序列化模块
- utils
- 工具函数模块
Structs§
- Monotonic
Instant - A measurement of a monotonically nondecreasing clock.
Opaque and useful only with
Duration.
Functions§
- interval
- Creates new
Intervalthat yields with interval ofperiod. The first tick completes immediately. The defaultMissedTickBehaviorisBurst, but this can be configured by callingset_missed_tick_behavior. - sleep
- Waits until
durationhas elapsed. - timeout
- Requires a
Futureto complete before the specified duration has elapsed.