#[repr(C, u8)]pub enum ChainElement<'a> {
CallExpression(Box<'a, CallExpression<'a>>),
TSNonNullExpression(Box<'a, TSNonNullExpression<'a>>),
ComputedMemberExpression(Box<'a, ComputedMemberExpression<'a>>),
StaticMemberExpression(Box<'a, StaticMemberExpression<'a>>),
PrivateFieldExpression(Box<'a, PrivateFieldExpression<'a>>),
}Expand description
Chain Element
Inherits variants from MemberExpression. See ast module docs for explanation of inheritance.
Variants§
CallExpression(Box<'a, CallExpression<'a>>)
TSNonNullExpression(Box<'a, TSNonNullExpression<'a>>)
foo?.baz! or foo?.[bar]!
ComputedMemberExpression(Box<'a, ComputedMemberExpression<'a>>)
Inherited from MemberExpression.
MemberExpression[?Yield, ?Await] [ Expression[+In, ?Yield, ?Await] ]
StaticMemberExpression(Box<'a, StaticMemberExpression<'a>>)
Inherited from MemberExpression.
MemberExpression[?Yield, ?Await] . IdentifierName
PrivateFieldExpression(Box<'a, PrivateFieldExpression<'a>>)
Inherited from MemberExpression.
MemberExpression[?Yield, ?Await] . PrivateIdentifier
Implementations§
Source§impl<'a> ChainElement<'a>
impl<'a> ChainElement<'a>
Sourcepub fn is_member_expression(&self) -> bool
pub fn is_member_expression(&self) -> bool
Return if a ChainElement is a MemberExpression.
Sourcepub fn into_member_expression(self) -> MemberExpression<'a>
pub fn into_member_expression(self) -> MemberExpression<'a>
Sourcepub fn as_member_expression(&self) -> Option<&MemberExpression<'a>>
pub fn as_member_expression(&self) -> Option<&MemberExpression<'a>>
Convert &ChainElement to &MemberExpression.
Sourcepub fn as_member_expression_mut(&mut self) -> Option<&mut MemberExpression<'a>>
pub fn as_member_expression_mut(&mut self) -> Option<&mut MemberExpression<'a>>
Convert &mut ChainElement to &mut MemberExpression.
Sourcepub fn to_member_expression(&self) -> &MemberExpression<'a>
pub fn to_member_expression(&self) -> &MemberExpression<'a>
Sourcepub fn to_member_expression_mut(&mut self) -> &mut MemberExpression<'a>
pub fn to_member_expression_mut(&mut self) -> &mut MemberExpression<'a>
Source§impl<'a> ChainElement<'a>
impl<'a> ChainElement<'a>
Sourcepub fn member_expression(&self) -> Option<&MemberExpression<'a>>
pub fn member_expression(&self) -> Option<&MemberExpression<'a>>
Returns the member expression.
Trait Implementations§
Source§impl<'new_alloc> CloneIn<'new_alloc> for ChainElement<'_>
impl<'new_alloc> CloneIn<'new_alloc> for ChainElement<'_>
Source§type Cloned = ChainElement<'new_alloc>
type Cloned = ChainElement<'new_alloc>
The type of the cloned object. Read more
Source§fn clone_in(
&self,
allocator: &'new_alloc Allocator,
) -> <ChainElement<'_> as CloneIn<'new_alloc>>::Cloned
fn clone_in( &self, allocator: &'new_alloc Allocator, ) -> <ChainElement<'_> as CloneIn<'new_alloc>>::Cloned
Clone
self into the given allocator. allocator may be the same one
that self is already in.Source§fn clone_in_with_semantic_ids(
&self,
allocator: &'new_alloc Allocator,
) -> <ChainElement<'_> as CloneIn<'new_alloc>>::Cloned
fn clone_in_with_semantic_ids( &self, allocator: &'new_alloc Allocator, ) -> <ChainElement<'_> as CloneIn<'new_alloc>>::Cloned
Almost identical as
clone_in, but for some special type, it will also clone the semantic ids.
Please use this method only if you make sure semantic info is synced with the ast node.Source§impl ContentEq for ChainElement<'_>
impl ContentEq for ChainElement<'_>
Source§fn content_eq(&self, other: &ChainElement<'_>) -> bool
fn content_eq(&self, other: &ChainElement<'_>) -> bool
This method tests for contents of
self and other to be equal.Source§fn content_ne(&self, other: &Self) -> bool
fn content_ne(&self, other: &Self) -> bool
This method tests for contents of
self and other not to be equal.
The default implementation is almost always
sufficient, and should not be overridden without very good reason.Source§impl<'a> Debug for ChainElement<'a>
impl<'a> Debug for ChainElement<'a>
Source§impl<'a> Dummy<'a> for ChainElement<'a>
impl<'a> Dummy<'a> for ChainElement<'a>
Source§fn dummy(allocator: &'a Allocator) -> ChainElement<'a>
fn dummy(allocator: &'a Allocator) -> ChainElement<'a>
Create a dummy ChainElement.
Has cost of making 2 allocations (32 bytes).
Source§impl<'a> From<ChainElement<'a>> for Expression<'a>
impl<'a> From<ChainElement<'a>> for Expression<'a>
Source§fn from(value: ChainElement<'a>) -> Expression<'a>
fn from(value: ChainElement<'a>) -> Expression<'a>
Converts to this type from the input type.
Source§impl<'a> From<MemberExpression<'a>> for ChainElement<'a>
impl<'a> From<MemberExpression<'a>> for ChainElement<'a>
Source§fn from(value: MemberExpression<'a>) -> ChainElement<'a>
fn from(value: MemberExpression<'a>) -> ChainElement<'a>
Convert MemberExpression to ChainElement.
Source§impl GetAddress for ChainElement<'_>
impl GetAddress for ChainElement<'_>
Source§impl GetSpanMut for ChainElement<'_>
impl GetSpanMut for ChainElement<'_>
Source§impl<'a> MayHaveSideEffects<'a> for ChainElement<'a>
impl<'a> MayHaveSideEffects<'a> for ChainElement<'a>
fn may_have_side_effects( &self, ctx: &impl MayHaveSideEffectsContext<'a>, ) -> bool
Source§impl<'a> TakeIn<'a> for ChainElement<'a>
impl<'a> TakeIn<'a> for ChainElement<'a>
Source§fn take_in<A>(&mut self, allocator_accessor: A) -> Selfwhere
A: AllocatorAccessor<'a>,
fn take_in<A>(&mut self, allocator_accessor: A) -> Selfwhere
A: AllocatorAccessor<'a>,
Replace node with a dummy.
Source§fn take_in_box<A>(&mut self, allocator_accessor: A) -> Box<'a, Self>where
A: AllocatorAccessor<'a>,
fn take_in_box<A>(&mut self, allocator_accessor: A) -> Box<'a, Self>where
A: AllocatorAccessor<'a>,
Replace node with a boxed dummy.
Source§impl<'a> TryFrom<ChainElement<'a>> for MemberExpression<'a>
impl<'a> TryFrom<ChainElement<'a>> for MemberExpression<'a>
Source§fn try_from(
value: ChainElement<'a>,
) -> Result<MemberExpression<'a>, <MemberExpression<'a> as TryFrom<ChainElement<'a>>>::Error>
fn try_from( value: ChainElement<'a>, ) -> Result<MemberExpression<'a>, <MemberExpression<'a> as TryFrom<ChainElement<'a>>>::Error>
Convert ChainElement to MemberExpression.
Auto Trait Implementations§
impl<'a> Freeze for ChainElement<'a>
impl<'a> !RefUnwindSafe for ChainElement<'a>
impl<'a> !Send for ChainElement<'a>
impl<'a> !Sync for ChainElement<'a>
impl<'a> Unpin for ChainElement<'a>
impl<'a> !UnwindSafe for ChainElement<'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> 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 moreSource§impl<D> OwoColorize for D
impl<D> OwoColorize for D
Source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
Set the foreground color generically Read more
Source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
Set the background color generically. Read more
Source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
Change the foreground color to black
Source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
Change the background color to black
Source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
Change the foreground color to red
Source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
Change the background color to red
Source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
Change the foreground color to green
Source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
Change the background color to green
Source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
Change the foreground color to yellow
Source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
Change the background color to yellow
Source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
Change the foreground color to blue
Source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
Change the background color to blue
Source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
Change the foreground color to magenta
Source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
Change the background color to magenta
Source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
Change the foreground color to purple
Source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
Change the background color to purple
Source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
Change the foreground color to cyan
Source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
Change the background color to cyan
Source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
Change the foreground color to white
Source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
Change the background color to white
Source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
Change the foreground color to the terminal default
Source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
Change the background color to the terminal default
Source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
Change the foreground color to bright black
Source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
Change the background color to bright black
Source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
Change the foreground color to bright red
Source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
Change the background color to bright red
Source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
Change the foreground color to bright green
Source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
Change the background color to bright green
Source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
Change the foreground color to bright yellow
Source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
Change the background color to bright yellow
Source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
Change the foreground color to bright blue
Source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
Change the background color to bright blue
Source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Change the foreground color to bright magenta
Source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Change the background color to bright magenta
Source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Change the foreground color to bright purple
Source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Change the background color to bright purple
Source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
Change the foreground color to bright cyan
Source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
Change the background color to bright cyan
Source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
Change the foreground color to bright white
Source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
Change the background color to bright white
Source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
Make the text bold
Source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
Make the text dim
Source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
Make the text italicized
Source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
Make the text underlined
Source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
Make the text blink
Source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
Make the text blink (but fast!)
Source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
Swap the foreground and background colors
Hide the text
Source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
Cross out the text
Source§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
Set the foreground color at runtime. Only use if you do not know which color will be used at
compile-time. If the color is constant, use either
OwoColorize::fg or
a color-specific method, such as OwoColorize::green, Read moreSource§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
Set the background color at runtime. Only use if you do not know what color to use at
compile-time. If the color is constant, use either
OwoColorize::bg or
a color-specific method, such as OwoColorize::on_yellow, Read moreSource§fn fg_rgb<const R: u8, const G: u8, const B: u8>(
&self,
) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>
fn fg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>
Set the foreground color to a specific RGB value.
Source§fn bg_rgb<const R: u8, const G: u8, const B: u8>(
&self,
) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>
fn bg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>
Set the background color to a specific RGB value.
Source§fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
Sets the foreground color to an RGB value.
Source§fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>
fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>
Sets the background color to an RGB value.