pub struct ElixirFunction {
pub name: String,
pub arity: usize,
pub clauses: Vec<(Vec<ElixirExpr>, Option<ElixirExpr>, ElixirExpr)>,
pub is_private: bool,
pub doc: Option<String>,
}Expand description
A single Elixir function definition.
Each function can have multiple clauses for pattern-matched dispatch.
Fields§
§name: StringUnqualified function name
arity: usizeNumber of parameters (arity)
clauses: Vec<(Vec<ElixirExpr>, Option<ElixirExpr>, ElixirExpr)>Clauses: (patterns, optional guard, body)
is_private: boolWhether this function is private (defp)
doc: Option<String>Inline documentation string
Trait Implementations§
Source§impl Clone for ElixirFunction
impl Clone for ElixirFunction
Source§fn clone(&self) -> ElixirFunction
fn clone(&self) -> ElixirFunction
Returns a duplicate of the value. Read more
1.0.0 · 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 ElixirFunction
impl RefUnwindSafe for ElixirFunction
impl Send for ElixirFunction
impl Sync for ElixirFunction
impl Unpin for ElixirFunction
impl UnsafeUnpin for ElixirFunction
impl UnwindSafe for ElixirFunction
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