pub struct ImplMethod {
pub name: FnName,
pub class: Rc<CapabilityIdent>,
pub client_param: Ident,
pub inputs: InputParams,
pub output: FnOutput,
pub is_async: bool,
pub is_mutable_self: bool,
pub body: Block,
pub attrs: Vec<Attribute>,
}Expand description
Represents a validated method within a capability impl block.
Fields§
§name: FnName§class: Rc<CapabilityIdent>§client_param: Ident§inputs: InputParams§output: FnOutput§is_async: bool§is_mutable_self: bool§body: Block§attrs: Vec<Attribute>Implementations§
Source§impl ImplMethod
impl ImplMethod
Sourcepub fn parse(
f: &ImplItemFn,
class: &Rc<CapabilityIdent>,
required_docs: bool,
) -> Result<Self>
pub fn parse( f: &ImplItemFn, class: &Rc<CapabilityIdent>, required_docs: bool, ) -> Result<Self>
Parse and validate a method from an impl block
pub fn generate_input_struct(&self) -> TokenStream
Sourcepub fn generate_server_method(&self) -> TokenStream
pub fn generate_server_method(&self) -> TokenStream
Generate the server-side impl method. This preserves &mut self if the user wrote it, to allow state mutation on the server.
pub fn generate_server_ffi(&self) -> TokenStream
pub fn generate_vtable_entry(&self) -> TokenStream
Sourcepub fn generate_client_method(&self, module: Option<&Ident>) -> TokenStream
pub fn generate_client_method(&self, module: Option<&Ident>) -> TokenStream
Generate the client-side method. This ALWAYS uses &self, because the client proxy should be immutable.
pub fn generate_client_wasm(&self) -> TokenStream
pub fn doc_attrs(&self) -> Vec<&Attribute>
Trait Implementations§
Source§impl Clone for ImplMethod
impl Clone for ImplMethod
Source§fn clone(&self) -> ImplMethod
fn clone(&self) -> ImplMethod
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ImplMethod
impl RefUnwindSafe for ImplMethod
impl !Send for ImplMethod
impl !Sync for ImplMethod
impl Unpin for ImplMethod
impl UnsafeUnpin for ImplMethod
impl UnwindSafe for ImplMethod
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