Trait websocat::specifier::SpecifierClass [−][src]
pub trait SpecifierClass: Debug { fn get_name(&self) -> &'static str; fn get_prefixes(&self) -> Vec<&'static str>; fn help(&self) -> &'static str; fn construct(&self, arg: &str) -> Result<Rc<Specifier>, Box<Error>>; fn construct_overlay(
&self,
inner: Rc<Specifier>
) -> Result<Rc<Specifier>, Box<Error>>; fn is_overlay(&self) -> bool; fn message_boundary_status(&self) -> ClassMessageBoundaryStatus; fn multiconnect_status(&self) -> ClassMulticonnectStatus; fn alias_info(&self) -> Option<&'static str>; }
A trait for a each specified type's accompanying object
Don't forget to register each instance at the list_of_all_specifier_classes
macro.
Required Methods
fn get_name(&self) -> &'static str
The primary name of the class
fn get_prefixes(&self) -> Vec<&'static str>
Names to match command line parameters against, with a :
colon if needed
fn help(&self) -> &'static str
--long-help snippet about this specifier
fn construct(&self, arg: &str) -> Result<Rc<Specifier>, Box<Error>>
Given the command line text, construct the specifier
arg is what comes after the colon (e.g. //echo.websocket.org
in ws://echo.websocket.org
)
fn construct_overlay(
&self,
inner: Rc<Specifier>
) -> Result<Rc<Specifier>, Box<Error>>
&self,
inner: Rc<Specifier>
) -> Result<Rc<Specifier>, Box<Error>>
Given the inner specifier, construct this specifier.
fn is_overlay(&self) -> bool
Returns if this specifier is an overlay
fn message_boundary_status(&self) -> ClassMessageBoundaryStatus
True if it is not expected to preserve message boundaries on reads
fn multiconnect_status(&self) -> ClassMulticonnectStatus
fn alias_info(&self) -> Option<&'static str>
If it is Some then is_overlay, construct and most other things are ignored and prefix get replaced...
Implementors
impl SpecifierClass for StdioClass
impl SpecifierClass for InetdClass
impl SpecifierClass for OpenAsyncClass
impl SpecifierClass for OpenFdAsyncClass
impl SpecifierClass for ReadFileClass
impl SpecifierClass for WriteFileClass
impl SpecifierClass for AppendFileClass
impl SpecifierClass for MirrorClass
impl SpecifierClass for LiteralReplyClass
impl SpecifierClass for TcpConnectClass
impl SpecifierClass for TcpListenClass
impl SpecifierClass for UdpConnectClass
impl SpecifierClass for UdpListenClass
impl SpecifierClass for ThreadedStdioClass
impl SpecifierClass for LiteralClass
impl SpecifierClass for AssertClass
impl SpecifierClass for Assert2Class
impl SpecifierClass for CloggedClass
impl SpecifierClass for WsClientClass
impl SpecifierClass for WsConnectClass
impl SpecifierClass for WsServerClass
impl SpecifierClass for WsTcpServerClass
impl SpecifierClass for WsInetdServerClass
impl SpecifierClass for WsUnixServerClass
impl SpecifierClass for WsAbstractUnixServerClass
impl SpecifierClass for CmdClass
impl SpecifierClass for ShCClass
impl SpecifierClass for ExecClass
impl SpecifierClass for UnixConnectClass
impl SpecifierClass for UnixListenClass
impl SpecifierClass for UnixDgramClass
impl SpecifierClass for AbstractConnectClass
impl SpecifierClass for AbstractListenClass
impl SpecifierClass for AbstractDgramClass
impl SpecifierClass for BroadcastReuserClass
impl SpecifierClass for Message2LineClass
impl SpecifierClass for Line2MessageClass
impl SpecifierClass for ReuserClass
impl SpecifierClass for AutoReconnectClass