Skip to main content

ModRef

Enum ModRef 

Source
pub enum ModRef<'a> {
    Module(&'a ModModule),
    Expression(&'a ModExpression),
}
Expand description

See also mod

Variants§

§

Module(&'a ModModule)

§

Expression(&'a ModExpression)

Implementations§

Source§

impl<'a> ModRef<'a>

Source

pub const fn is_module(&self) -> bool

Returns true if self is of variant Module.

Source

pub fn as_module(&self) -> Option<&&'a ModModule>

Returns Some if self is a reference of variant Module, and None otherwise.

Source

pub fn as_mut_module(&mut self) -> Option<&mut &'a ModModule>

Returns Some if self is a mutable reference of variant Module, and None otherwise.

Source

pub fn expect_module(self) -> &'a ModModule
where ModRef<'a>: Debug,

Unwraps the value, yielding the content of Module.

§Panics

Panics if the value is not Module. In debug builds the panic message includes the content of self.

Source

pub fn module(self) -> Option<&'a ModModule>

Returns Some if self is of variant Module, and None otherwise.

Source

pub const fn is_expression(&self) -> bool

Returns true if self is of variant Expression.

Source

pub fn as_expression(&self) -> Option<&&'a ModExpression>

Returns Some if self is a reference of variant Expression, and None otherwise.

Source

pub fn as_mut_expression(&mut self) -> Option<&mut &'a ModExpression>

Returns Some if self is a mutable reference of variant Expression, and None otherwise.

Source

pub fn expect_expression(self) -> &'a ModExpression
where ModRef<'a>: Debug,

Unwraps the value, yielding the content of Expression.

§Panics

Panics if the value is not Expression. In debug builds the panic message includes the content of self.

Source

pub fn expression(self) -> Option<&'a ModExpression>

Returns Some if self is of variant Expression, and None otherwise.

Trait Implementations§

Source§

impl<'a> Clone for ModRef<'a>

Source§

fn clone(&self) -> ModRef<'a>

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<'a> Copy for ModRef<'a>

Source§

impl<'a> Debug for ModRef<'a>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl<'a> From<&'a Mod> for ModRef<'a>

Source§

fn from(node: &'a Mod) -> ModRef<'a>

Converts to this type from the input type.
Source§

impl<'a> From<&'a ModExpression> for ModRef<'a>

Source§

fn from(node: &'a ModExpression) -> ModRef<'a>

Converts to this type from the input type.
Source§

impl<'a> From<&'a ModModule> for ModRef<'a>

Source§

fn from(node: &'a ModModule) -> ModRef<'a>

Converts to this type from the input type.
Source§

impl<'a> From<ModRef<'a>> for AnyNodeRef<'a>

Source§

fn from(node: ModRef<'a>) -> AnyNodeRef<'a>

Converts to this type from the input type.
Source§

impl<'a> GetSize for ModRef<'a>

Source§

fn get_heap_size(&self) -> usize

Determines how many bytes this object occupies inside the heap. Read more
Source§

fn get_heap_size_with_tracker<TRACKER>( &self, tracker: TRACKER, ) -> (usize, TRACKER)
where TRACKER: GetSizeTracker,

Determines how many bytes this object occupies inside the heap while using a tracker. Read more
Source§

fn get_stack_size() -> usize

Determines how may bytes this object occupies inside the stack. Read more
Source§

fn get_size(&self) -> usize

Determines the total size of the object. Read more
Source§

fn get_size_with_tracker<T>(&self, tracker: T) -> (usize, T)
where T: GetSizeTracker,

Determines the total size of the object while using a tracker. Read more
Source§

impl HasNodeIndex for ModRef<'_>

Source§

fn node_index(&self) -> &AtomicNodeIndex

Returns the AtomicNodeIndex for this node.
Source§

impl<'a> PartialEq for ModRef<'a>

Source§

fn eq(&self, other: &ModRef<'a>) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl Ranged for ModRef<'_>

Source§

fn range(&self) -> TextRange

The range of this item in the source text.
Source§

fn start(&self) -> TextSize

The start offset of this item in the source text.
Source§

fn end(&self) -> TextSize

The end offset of this item in the source text.
Source§

impl<'a> StructuralPartialEq for ModRef<'a>

Auto Trait Implementations§

§

impl<'a> Freeze for ModRef<'a>

§

impl<'a> RefUnwindSafe for ModRef<'a>

§

impl<'a> Send for ModRef<'a>

§

impl<'a> Sync for ModRef<'a>

§

impl<'a> Unpin for ModRef<'a>

§

impl<'a> UnsafeUnpin for ModRef<'a>

§

impl<'a> UnwindSafe for ModRef<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T, U> ExactFrom<T> for U
where U: TryFrom<T>,

Source§

fn exact_from(value: T) -> U

Source§

impl<T, U> ExactInto<U> for T
where U: ExactFrom<T>,

Source§

fn exact_into(self) -> U

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Helper for T

Source§

impl<T, U> ImaginaryInto<U> for T
where U: ImaginaryFrom<T>,

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T, U> OverflowingInto<U> for T
where U: OverflowingFrom<T>,

Source§

impl<T> PrimitiveIntRandomBounds for T

Source§

impl<T> PrimitiveSignedRandomBounds for T

Source§

impl<T> PyThreadingConstraint for T

Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T, U> RoundingInto<U> for T
where U: RoundingFrom<T>,

Source§

impl<T, U> SaturatingInto<U> for T
where U: SaturatingFrom<T>,

Source§

impl<T> ToDebugString for T
where T: Debug,

Source§

fn to_debug_string(&self) -> String

Returns the String produced by Ts Debug implementation.

§Examples
use malachite_base::strings::ToDebugString;

assert_eq!([1, 2, 3].to_debug_string(), "[1, 2, 3]");
assert_eq!(
    [vec![2, 3], vec![], vec![4]].to_debug_string(),
    "[[2, 3], [], [4]]"
);
assert_eq!(Some(5).to_debug_string(), "Some(5)");
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T, U> WrappingInto<U> for T
where U: WrappingFrom<T>,

Source§

fn wrapping_into(self) -> U