pub enum Source {
File(PathBuf),
Environment,
Prompt,
Shell,
}Expand description
Where a frame’s code came from, as BASH_SOURCE names it. Two of bash’s
words are not paths at all.
Variants§
File(PathBuf)
Absolute, by joining what bash reported onto the walk’s own $PWD.
Nothing is resolved: no symlink is followed and no .. collapsed.
Whether the file is there is found and not this:
bash keeps a source path as it was written, and a shell that has since
changed directory leaves a relative one pointing nowhere.
Environment
environment: the function came in through the environment.
Prompt
main: the function was defined at an interactive prompt.
Shell
The code bash was given rather than read: a -c command line, or
standard input. Bash writes $0 here, which is a word and not a path.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Source
impl<'de> Deserialize<'de> for Source
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for Source
impl StructuralPartialEq for Source
Auto Trait Implementations§
impl Freeze for Source
impl RefUnwindSafe for Source
impl Send for Source
impl Sync for Source
impl Unpin for Source
impl UnsafeUnpin for Source
impl UnwindSafe for Source
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.