pub trait ContextCapabilityClause:
Clone
+ PartialEq
+ Debug {
Show 27 methods
// Required methods
fn service(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>;
fn protocol(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>;
fn directory(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>;
fn storage(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>;
fn runner(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>;
fn resolver(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>;
fn dictionary(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>;
fn config(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>;
fn event_stream(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>;
fn origin(&self) -> &Arc<PathBuf>;
fn availability(&self) -> Option<ContextSpanned<Availability>>;
fn set_availability(&mut self, a: Option<ContextSpanned<Availability>>);
fn set_service(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>);
fn set_protocol(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>);
fn set_directory(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>);
fn set_storage(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>);
fn set_runner(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>);
fn set_resolver(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>);
fn set_event_stream(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>);
fn set_dictionary(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>);
fn set_config(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>);
fn are_many_names_allowed(&self) -> bool;
fn decl_type(&self) -> &'static str;
fn supported(&self) -> &[&'static str];
// Provided methods
fn capability_type(
&self,
origin: Option<Arc<PathBuf>>,
) -> Result<&'static str, Error> { ... }
fn names(&self) -> Vec<ContextSpanned<Name>> { ... }
fn set_names(&mut self, names: Vec<ContextSpanned<Name>>) { ... }
}Required Methods§
fn service(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>
fn protocol(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>
fn directory(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>
fn storage(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>
fn runner(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>
fn resolver(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>
fn dictionary(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>
fn config(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>
fn event_stream(&self) -> Option<ContextSpanned<OneOrMany<&BorrowedName>>>
fn origin(&self) -> &Arc<PathBuf>
fn availability(&self) -> Option<ContextSpanned<Availability>>
fn set_availability(&mut self, a: Option<ContextSpanned<Availability>>)
fn set_service(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>)
fn set_protocol(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>)
fn set_directory(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>)
fn set_storage(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>)
fn set_runner(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>)
fn set_resolver(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>)
fn set_event_stream(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>)
fn set_dictionary(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>)
fn set_config(&mut self, o: Option<ContextSpanned<OneOrMany<Name>>>)
Sourcefn are_many_names_allowed(&self) -> bool
fn are_many_names_allowed(&self) -> bool
Returns true if this capability type allows the ::Many variant of OneOrMany.
fn decl_type(&self) -> &'static str
fn supported(&self) -> &[&'static str]
Provided Methods§
fn capability_type( &self, origin: Option<Arc<PathBuf>>, ) -> Result<&'static str, Error>
Sourcefn names(&self) -> Vec<ContextSpanned<Name>>
fn names(&self) -> Vec<ContextSpanned<Name>>
Returns the names of the capabilities in this clause, wrapped in ContextSpanned. This allows the caller to know the file source of every individual name.
Sourcefn set_names(&mut self, names: Vec<ContextSpanned<Name>>)
fn set_names(&mut self, names: Vec<ContextSpanned<Name>>)
Sets the names for this capability, preserving origin information.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".