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]
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
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]
&mut self,
config: &dyn Conf,
block: impl FnOnce(&dyn Conf, &mut Self) -> T
)
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]
pub fn clone_from(&mut self, source: &Self)1.0.0[src]
impl Default for EvaluationContext[src]
fn default() -> EvaluationContext[src]
Auto Trait Implementations
impl !RefUnwindSafe for EvaluationContext
impl Send for EvaluationContext
impl Sync for EvaluationContext
impl Unpin for EvaluationContext
impl !UnwindSafe for EvaluationContext
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> Pointable for T
pub const ALIGN: usize
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
pub unsafe fn drop(ptr: usize)
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> SpannedItem for T[src]
pub fn spanned(self, span: impl Into<Span>) -> Spanned<Self>[src]
pub fn spanned_unknown(self) -> Spanned<Self>[src]
impl<T> TaggedItem for T[src]
pub fn tagged(self, tag: impl Into<Tag>) -> Tagged<Self>[src]
pub fn tagged_unknown(self) -> Tagged<Self>[src]
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
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]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
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]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,