pub struct MethodSig {
pub doc: Option<Doc>,
pub directives: Directives,
pub is_unchecked: bool,
pub name: Ident,
pub receiver: SelfParam,
pub params: Vec<Param>,
pub return_type: Option<TypeExpr>,
pub span: Span,
}Expand description
A method signature inside an interface declaration.
No body and no associated functions (no-self) are allowed in MVP.
Fields§
§doc: Option<Doc>ADR-0089: docstring attached to this signature.
directives: DirectivesDirectives applied to this signature (e.g. @mark(unchecked)).
is_unchecked: boolADR-0088: whether this signature is marked @mark(unchecked).
Implementors must match this flag exactly (conformance is
strict — checked impls must match a checked sig, unchecked
impls must match an unchecked sig).
name: IdentMethod name
receiver: SelfParamThe receiver. Required (associated functions are not yet allowed in interfaces).
params: Vec<Param>Method parameters (excluding self)
return_type: Option<TypeExpr>Return type (None means implicit unit ())
span: SpanSpan covering the entire signature (fn name(...) -> R;)
Trait Implementations§
Source§impl<'de> Deserialize<'de> for MethodSig
impl<'de> Deserialize<'de> for MethodSig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for MethodSig
impl StructuralPartialEq for MethodSig
Auto Trait Implementations§
impl Freeze for MethodSig
impl RefUnwindSafe for MethodSig
impl Send for MethodSig
impl Sync for MethodSig
impl Unpin for MethodSig
impl UnsafeUnpin for MethodSig
impl UnwindSafe for MethodSig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<'src, T> IntoMaybe<'src, T> for Twhere
T: 'src,
impl<'src, T> IntoMaybe<'src, T> for Twhere
T: 'src,
§impl<'p, T> Seq<'p, T> for Twhere
T: Clone,
impl<'p, T> Seq<'p, T> for Twhere
T: Clone,
§type Iter<'a> = Once<&'a T>
where
T: 'a
type Iter<'a> = Once<&'a T> where T: 'a
An iterator over the items within this container, by reference.
§fn contains(&self, val: &T) -> boolwhere
T: PartialEq,
fn contains(&self, val: &T) -> boolwhere
T: PartialEq,
Check whether an item is contained within this sequence.
§fn to_maybe_ref<'b>(item: <T as Seq<'p, T>>::Item<'b>) -> Maybe<T, &'p T>where
'p: 'b,
fn to_maybe_ref<'b>(item: <T as Seq<'p, T>>::Item<'b>) -> Maybe<T, &'p T>where
'p: 'b,
Convert an item of the sequence into a [
MaybeRef].