filament-interfaces · auto
Source declarations, signatures and documentation for auto.
Read the current implementation boundaries before integration. This reference reproduces declarations; it omits source comments whose examples or readiness claims have not been verified.
Source: sigil/weave/filament/filament-interfaces/src/auto.rs. SHA-256: 829ce204e802c92adbc1c1ed34a0db689db8b94d52ec675967b2aba9b2cfae95.
This reference follows declared source modules, retains conditional attributes, and includes public declarations and implementation methods. Private-module re-exports and trait resolution require the compiler; this is a source reference, not a claim that every listed item is a root import. Function bodies and constant values are omitted.
auto::DiscoveryScope
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum DiscoveryScope {
/// Link-local scope (same physical network)
Link = 2,
/// Admin-local scope (administratively scoped)
Admin = 4,
/// Site-local scope (same site)
Site = 5,
/// Organization-local scope (same organization)
Organization = 8,
/// Global scope (Internet-wide)
Global = 14,
}Source line: 19.
auto::AutoInterfaceConfig
#[derive(Debug, Clone)]
pub struct AutoInterfaceConfig {
/// Group ID for network isolation
pub group_id: String,
/// Discovery scope
pub scope: DiscoveryScope,
/// Data port for packet transmission
pub data_port: u16,
/// Discovery port for peer discovery
pub discovery_port: u16,
/// Interface mode
pub mode: InterfaceMode,
/// Specific network devices to use (None = all)
pub devices: Option<Vec<String>>,
/// Network devices to ignore
pub ignored_devices: Option<Vec<String>>,
/// Peer discovery interval
pub discovery_interval: Duration,
/// Optional IFAC authentication
pub ifac: Option<IFAC>
}Source line: 40.
auto::AutoInterfaceBuilder
pub struct AutoInterfaceBuilder {
}Source line: 78.
auto::AutoInterfaceBuilder::new
pub fn new() -> Self;Source line: 84.
auto::AutoInterfaceBuilder::group_id
pub fn group_id(mut self, group_id: impl Into<String>) -> Self;Source line: 91.
auto::AutoInterfaceBuilder::scope
pub fn scope(mut self, scope: DiscoveryScope) -> Self;Source line: 97.
auto::AutoInterfaceBuilder::data_port
pub fn data_port(mut self, port: u16) -> Self;Source line: 103.
auto::AutoInterfaceBuilder::discovery_port
pub fn discovery_port(mut self, port: u16) -> Self;Source line: 109.
auto::AutoInterfaceBuilder::mode
pub fn mode(mut self, mode: InterfaceMode) -> Self;Source line: 115.
auto::AutoInterfaceBuilder::devices
pub fn devices(mut self, devices: Vec<String>) -> Self;Source line: 121.
auto::AutoInterfaceBuilder::ignored_devices
pub fn ignored_devices(mut self, devices: Vec<String>) -> Self;Source line: 127.
auto::AutoInterfaceBuilder::discovery_interval
pub fn discovery_interval(mut self, interval: Duration) -> Self;Source line: 133.
auto::AutoInterfaceBuilder::ifac
pub fn ifac(mut self, ifac: IFAC) -> Self;Source line: 139.
auto::AutoInterfaceBuilder::build
pub async fn build(self) -> Result<AutoInterface, InterfaceError>;Source line: 145.
auto::AutoInterface
pub struct AutoInterface {
}Source line: 194.
auto::AutoInterface::new
pub async fn new(config: AutoInterfaceConfig) -> Result<Self, InterfaceError>;Source line: 200.
auto::AutoInterface::builder
pub fn builder() -> AutoInterfaceBuilder;Source line: 240.
auto::AutoInterface::discovered_peers
pub async fn discovered_peers(&self) -> Vec<SocketAddrV6>;Source line: 415.