Struct wolfram_expr::symbol::Context
source · [−]pub struct Context(_);
Expand description
Wolfram Language context.
Examples: System`
, Global`
, MyPackage`Utils`
, etc.
Implementations
sourceimpl Context
impl Context
sourcepub fn new(input: &str) -> Self
pub fn new(input: &str) -> Self
Construct a context from input
.
Panics
This function will panic if input
is not a valid Wolfram Language context.
Context::try_new(input)
must succeed.
This method is intended to be used for convenient construction of contexts from string literals, where an error is unlikely to occur, e.g.:
use wolfram_expr::symbol::Context;
let context = Context::new("MyPackage`");
If not using a string literal as the argument, prefer to use Context::try_new
and handle the error condition.
sourcepub fn join(&self, name: SymbolNameRef<'_>) -> Context
pub fn join(&self, name: SymbolNameRef<'_>) -> Context
Construct a new Context
by appending a new context component to this
context.
use wolfram_expr::symbol::{Context, SymbolName, SymbolNameRef};
let context = Context::from_symbol_name(&SymbolName::try_new("MyContext").unwrap());
let private = context.join(SymbolNameRef::try_new("Private").unwrap());
assert!(private.as_str() == "MyContext`Private`");
sourcepub fn components(&self) -> Vec<SymbolNameRef<'_>>
pub fn components(&self) -> Vec<SymbolNameRef<'_>>
Return the components of this Context
.
use wolfram_expr::symbol::Context;
let context = Context::new("MyPackage`Sub`Module`");
let components = context.components();
assert!(components.len() == 3);
assert!(components[0].as_str() == "MyPackage");
assert!(components[1].as_str() == "Sub");
assert!(components[2].as_str() == "Module");
sourcepub fn as_context_ref(&self) -> ContextRef<'_>
pub fn as_context_ref(&self) -> ContextRef<'_>
Get a borrowed ContextRef
from this Context
.
sourcepub fn from_symbol_name(name: &SymbolName) -> Self
pub fn from_symbol_name(name: &SymbolName) -> Self
Create the context name`
.
Trait Implementations
sourceimpl Ord for Context
impl Ord for Context
sourceimpl PartialOrd<Context> for Context
impl PartialOrd<Context> for Context
sourcefn partial_cmp(&self, other: &Context) -> Option<Ordering>
fn partial_cmp(&self, other: &Context) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl Eq for Context
impl StructuralEq for Context
impl StructuralPartialEq for Context
Auto Trait Implementations
impl RefUnwindSafe for Context
impl Send for Context
impl Sync for Context
impl Unpin for Context
impl UnwindSafe for Context
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more