Struct nu_engine::EvaluationContext[][src]

pub struct EvaluationContext {
    pub scope: Scope,
    pub host: Arc<Mutex<Box<dyn Host>>>,
    pub current_errors: Arc<Mutex<Vec<ShellError>>>,
    pub ctrl_c: Arc<AtomicBool>,
    pub configs: Arc<Mutex<ConfigHolder>>,
    pub shell_manager: ShellManager,
    pub windows_drives_previous_cwd: Arc<Mutex<HashMap<String, String>>>,
}

Fields

scope: Scopehost: Arc<Mutex<Box<dyn Host>>>current_errors: Arc<Mutex<Vec<ShellError>>>ctrl_c: Arc<AtomicBool>configs: Arc<Mutex<ConfigHolder>>shell_manager: ShellManagerwindows_drives_previous_cwd: Arc<Mutex<HashMap<String, String>>>

Windows-specific: keep track of previous cwd on each drive

Implementations

impl EvaluationContext[src]

pub fn new(
    scope: Scope,
    host: Arc<Mutex<Box<dyn Host>>>,
    current_errors: Arc<Mutex<Vec<ShellError>>>,
    ctrl_c: Arc<AtomicBool>,
    configs: Arc<Mutex<ConfigHolder>>,
    shell_manager: ShellManager,
    windows_drives_previous_cwd: Arc<Mutex<HashMap<String, String>>>
) -> Self
[src]

pub fn basic() -> EvaluationContext[src]

pub fn from_args(args: &CommandArgs) -> EvaluationContext[src]

pub fn error(&self, error: ShellError)[src]

pub fn clear_errors(&self)[src]

pub fn get_errors(&self) -> Vec<ShellError>[src]

pub fn configure<T>(
    &mut self,
    config: &dyn Conf,
    block: impl FnOnce(&dyn Conf, &mut Self) -> T
)
[src]

pub fn with_host<T>(&self, block: impl FnOnce(&mut dyn Host) -> T) -> T[src]

pub fn with_errors<T>(&self, block: impl FnOnce(&mut Vec<ShellError>) -> T) -> T[src]

pub fn add_commands(&self, commands: Vec<Command>)[src]

pub fn sync_path_to_env(&self)[src]

pub fn is_command_registered(&self, name: &str) -> bool[src]

pub fn load_config(&self, cfg_path: &ConfigPath) -> Result<(), ShellError>[src]

Loads config under cfg_path. If an error occurs while loading the config: The config is not loaded The error is returned After successful loading of the config the startup scripts are run as normal scripts (Errors are printed out, …) After executing the startup scripts, true is returned to indicate successful loading of the config

pub fn reload_config(&self, cfg: &mut NuConfig) -> Result<(), ShellError>[src]

Reloads config with a path of cfg_path. If an error occurs while reloading the config: The config is not reloaded The error is returned

pub fn unload_config(&self, cfg_path: &ConfigPath)[src]

Runs all exit_scripts before unloading the config with path of cfg_path If an error occurs while running exit scripts: The error is added to self.current_errors If no config with path of cfg_path is present, this method does nothing

pub fn run_scripts(&self, scripts: Vec<String>, dir: Option<&Path>)[src]

Runs scripts with cwd of dir. If dir is None, this method does nothing. Each error is added to self.current_errors

Trait Implementations

impl Clone for EvaluationContext[src]

fn clone(&self) -> EvaluationContext[src]

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Default for EvaluationContext[src]

fn default() -> EvaluationContext[src]

Returns the “default value” for a type. Read more

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T> Pointable for T

pub const ALIGN: usize

The alignment of pointer.

type Init = T

The type for initializers.

pub unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more

pub unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more

pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more

pub unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> SpannedItem for T[src]

fn spanned(self, span: impl Into<Span>) -> Spanned<Self>[src]

Converts a value into a Spanned value

fn spanned_unknown(self) -> Spanned<Self>[src]

Converts a value into a Spanned value, using an unknown Span

impl<T> TaggedItem for T[src]

fn tagged(self, tag: impl Into<Tag>) -> Tagged<Self>[src]

fn tagged_unknown(self) -> Tagged<Self>[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

pub fn to_owned(&self) -> T[src]

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

pub fn clone_into(&self, target: &mut T)[src]

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

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

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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

Performs the conversion.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 

pub fn vzip(self) -> V