wick_interface_types/
traits.rs

1/// A trait for objects that contain or can generate operation signatures.
2pub trait OperationSignatures {
3  /// Get a list of operations hosted by the implementer.
4  fn operation_signatures(&self) -> Vec<crate::OperationSignature>;
5
6  /// Get an operation signature by name.
7  fn get_operation_signature(&self, name: &str) -> Option<crate::OperationSignature> {
8    self.operation_signatures().into_iter().find(|o| o.name == name)
9  }
10}