pub struct IdrisInterface {
pub name: String,
pub constraints: Vec<(String, Vec<IdrisType>)>,
pub params: Vec<(String, IdrisType)>,
pub methods: Vec<(String, IdrisType)>,
pub defaults: Vec<IdrisFunction>,
pub visibility: Visibility,
pub doc: Option<String>,
}Expand description
An interface (type class) declaration.
Fields§
§name: StringInterface name.
constraints: Vec<(String, Vec<IdrisType>)>Superclass constraints: Eq a =>.
params: Vec<(String, IdrisType)>Type parameters.
methods: Vec<(String, IdrisType)>Methods: (name, type_sig).
defaults: Vec<IdrisFunction>Default method implementations.
visibility: VisibilityVisibility.
doc: Option<String>Optional doc comment.
Implementations§
Trait Implementations§
Source§impl Clone for IdrisInterface
impl Clone for IdrisInterface
Source§fn clone(&self) -> IdrisInterface
fn clone(&self) -> IdrisInterface
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 moreSource§impl Debug for IdrisInterface
impl Debug for IdrisInterface
Source§impl PartialEq for IdrisInterface
impl PartialEq for IdrisInterface
impl StructuralPartialEq for IdrisInterface
Auto Trait Implementations§
impl Freeze for IdrisInterface
impl RefUnwindSafe for IdrisInterface
impl Send for IdrisInterface
impl Sync for IdrisInterface
impl Unpin for IdrisInterface
impl UnsafeUnpin for IdrisInterface
impl UnwindSafe for IdrisInterface
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