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
Fields
Parameter expansion that is not enclosed in braces.
BracedParam(Param)
Parameter expansion that is enclosed in braces.
CommandSubst
Fields
Command substitution of the form $(...)
.
Backquote
Fields
§
content: Vec<BackquoteUnit>
Command string that will be parsed and executed when the command substitution is expanded.
Command substitution of the form `...`
.
Arith
Fields
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 StructuralEq for TextUnit
impl StructuralPartialEq for TextUnit
Auto Trait Implementations§
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