pub enum StringLike<'a> {
String(&'a ExprStringLiteral),
Bytes(&'a ExprBytesLiteral),
FString(&'a ExprFString),
TString(&'a ExprTString),
}Expand description
An enum that holds a reference to a string-like expression from the AST. This includes string literals, bytes literals, f-strings, and t-strings.
Variants§
String(&'a ExprStringLiteral)
Bytes(&'a ExprBytesLiteral)
FString(&'a ExprFString)
TString(&'a ExprTString)
Implementations§
Source§impl<'a> StringLike<'a>
impl<'a> StringLike<'a>
pub const fn is_interpolated_string(self) -> bool
Sourcepub fn parts(&self) -> StringLikePartIter<'a> ⓘ
pub fn parts(&self) -> StringLikePartIter<'a> ⓘ
Returns an iterator over the StringLikePart contained in this string-like expression.
Sourcepub fn is_implicit_concatenated(self) -> bool
pub fn is_implicit_concatenated(self) -> bool
Returns true if the string is implicitly concatenated.
pub const fn as_expression_ref(self) -> ExprRef<'a>
Trait Implementations§
Source§impl<'a> Clone for StringLike<'a>
impl<'a> Clone for StringLike<'a>
Source§fn clone(&self) -> StringLike<'a>
fn clone(&self) -> StringLike<'a>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'a> Debug for StringLike<'a>
impl<'a> Debug for StringLike<'a>
Source§impl<'a> From<&'a ExprBytesLiteral> for StringLike<'a>
impl<'a> From<&'a ExprBytesLiteral> for StringLike<'a>
Source§fn from(value: &'a ExprBytesLiteral) -> Self
fn from(value: &'a ExprBytesLiteral) -> Self
Converts to this type from the input type.
Source§impl<'a> From<&'a ExprFString> for StringLike<'a>
impl<'a> From<&'a ExprFString> for StringLike<'a>
Source§fn from(value: &'a ExprFString) -> Self
fn from(value: &'a ExprFString) -> Self
Converts to this type from the input type.
Source§impl<'a> From<&'a ExprStringLiteral> for StringLike<'a>
impl<'a> From<&'a ExprStringLiteral> for StringLike<'a>
Source§fn from(value: &'a ExprStringLiteral) -> Self
fn from(value: &'a ExprStringLiteral) -> Self
Converts to this type from the input type.
Source§impl<'a> From<&'a ExprTString> for StringLike<'a>
impl<'a> From<&'a ExprTString> for StringLike<'a>
Source§fn from(value: &'a ExprTString) -> Self
fn from(value: &'a ExprTString) -> Self
Converts to this type from the input type.
Source§impl<'a> From<&StringLike<'a>> for AnyNodeRef<'a>
impl<'a> From<&StringLike<'a>> for AnyNodeRef<'a>
Source§fn from(value: &StringLike<'a>) -> Self
fn from(value: &StringLike<'a>) -> Self
Converts to this type from the input type.
Source§impl<'a> From<&StringLike<'a>> for ExprRef<'a>
impl<'a> From<&StringLike<'a>> for ExprRef<'a>
Source§fn from(value: &StringLike<'a>) -> Self
fn from(value: &StringLike<'a>) -> Self
Converts to this type from the input type.
Source§impl<'a> From<StringLike<'a>> for AnyNodeRef<'a>
impl<'a> From<StringLike<'a>> for AnyNodeRef<'a>
Source§fn from(value: StringLike<'a>) -> Self
fn from(value: StringLike<'a>) -> Self
Converts to this type from the input type.
Source§impl<'a> PartialEq for StringLike<'a>
impl<'a> PartialEq for StringLike<'a>
Source§impl Ranged for StringLike<'_>
impl Ranged for StringLike<'_>
Source§impl<'a> TryFrom<&'a Expr> for StringLike<'a>
impl<'a> TryFrom<&'a Expr> for StringLike<'a>
Source§impl<'a> TryFrom<AnyNodeRef<'a>> for StringLike<'a>
impl<'a> TryFrom<AnyNodeRef<'a>> for StringLike<'a>
impl<'a> Copy for StringLike<'a>
impl<'a> StructuralPartialEq for StringLike<'a>
Auto Trait Implementations§
impl<'a> Freeze for StringLike<'a>
impl<'a> RefUnwindSafe for StringLike<'a>
impl<'a> Send for StringLike<'a>
impl<'a> Sync for StringLike<'a>
impl<'a> Unpin for StringLike<'a>
impl<'a> UnsafeUnpin for StringLike<'a>
impl<'a> UnwindSafe for StringLike<'a>
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,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more