Enum yash_syntax::syntax::TextUnit
source · pub enum TextUnit {
Literal(char),
Backslashed(char),
RawParam {
name: String,
location: Location,
},
BracedParam(Param),
CommandSubst {
content: Rc<str>,
location: Location,
},
Backquote {
content: Vec<BackquoteUnit>,
location: Location,
},
Arith {
content: Text,
location: Location,
},
}
Expand description
Element of a Text, i.e., something that can be expanded.
Variants§
Literal(char)
Literal single character.
Backslashed(char)
Backslash-escaped single character.
RawParam
Parameter expansion that is not enclosed in braces.
Fields
BracedParam(Param)
Parameter expansion that is enclosed in braces.
CommandSubst
Command substitution of the form $(...)
.
Fields
Backquote
Command substitution of the form `...`
.
Fields
§
content: Vec<BackquoteUnit>
Command string that will be parsed and executed when the command substitution is expanded.
Arith
Arithmetic expansion.
Trait Implementations§
source§impl MaybeLiteral for TextUnit
impl MaybeLiteral for TextUnit
source§fn extend_if_literal<T: Extend<char>>(&self, result: T) -> Result<T, T>
fn extend_if_literal<T: Extend<char>>(&self, result: T) -> Result<T, T>
If self
is Literal
, appends the character to result
and returns
Ok(result)
. Otherwise, returns Err(result)
.
source§fn to_string_if_literal(&self) -> Option<String>
fn to_string_if_literal(&self) -> Option<String>
Checks if
self
is literal and, if so, converts to a string.source§impl PartialEq for TextUnit
impl PartialEq for TextUnit
impl Eq for TextUnit
impl StructuralPartialEq for TextUnit
Auto Trait Implementations§
impl Freeze for TextUnit
impl !RefUnwindSafe for TextUnit
impl !Send for TextUnit
impl !Sync for TextUnit
impl Unpin for TextUnit
impl !UnwindSafe for TextUnit
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