Struct swc_ecma_ast::OptChainExpr
source · pub struct OptChainExpr {
pub span: Span,
pub optional: bool,
pub base: Box<OptChainBase>,
}
Fields§
§span: Span
§optional: bool
§base: Box<OptChainBase>
This is boxed to reduce the type size of Expr.
Trait Implementations§
source§impl<'arbitrary> Arbitrary<'arbitrary> for OptChainExpr
impl<'arbitrary> Arbitrary<'arbitrary> for OptChainExpr
source§fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Self>
fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Self>
Generate an arbitrary value of
Self
from the given unstructured data. Read moresource§fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Self>
fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Self>
Generate an arbitrary value of
Self
from the entirety of the given
unstructured data. Read moresource§impl Archive for OptChainExpr
impl Archive for OptChainExpr
source§type Archived = ArchivedOptChainExpr
type Archived = ArchivedOptChainExpr
The archived representation of this type. Read more
source§type Resolver = OptChainExprResolver
type Resolver = OptChainExprResolver
The resolver for this type. It must contain all the additional information from serializing
needed to make the archived type from the normal type.
source§impl Clone for OptChainExpr
impl Clone for OptChainExpr
source§fn clone(&self) -> OptChainExpr
fn clone(&self) -> OptChainExpr
Returns a copy 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 Debug for OptChainExpr
impl Debug for OptChainExpr
source§impl Default for OptChainExpr
impl Default for OptChainExpr
source§fn default() -> OptChainExpr
fn default() -> OptChainExpr
Returns the “default value” for a type. Read more
source§impl<'de> Deserialize<'de> for OptChainExpr
impl<'de> Deserialize<'de> for OptChainExpr
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
source§impl<__D: Fallible + ?Sized> Deserialize<OptChainExpr, __D> for Archived<OptChainExpr>
impl<__D: Fallible + ?Sized> Deserialize<OptChainExpr, __D> for Archived<OptChainExpr>
source§fn deserialize(
&self,
deserializer: &mut __D,
) -> Result<OptChainExpr, __D::Error>
fn deserialize( &self, deserializer: &mut __D, ) -> Result<OptChainExpr, __D::Error>
Deserializes using the given deserializer
source§impl EqIgnoreSpan for OptChainExpr
impl EqIgnoreSpan for OptChainExpr
fn eq_ignore_span(&self, other: &Self) -> bool
source§impl From<OptChainExpr> for Expr
impl From<OptChainExpr> for Expr
source§fn from(v: OptChainExpr) -> Self
fn from(v: OptChainExpr) -> Self
Converts to this type from the input type.
source§impl From<OptChainExpr> for SimpleAssignTarget
impl From<OptChainExpr> for SimpleAssignTarget
source§fn from(v: OptChainExpr) -> Self
fn from(v: OptChainExpr) -> Self
Converts to this type from the input type.
source§impl Hash for OptChainExpr
impl Hash for OptChainExpr
source§impl PartialEq for OptChainExpr
impl PartialEq for OptChainExpr
source§impl<__S> Serialize<__S> for OptChainExpr
impl<__S> Serialize<__S> for OptChainExpr
source§impl Serialize for OptChainExpr
impl Serialize for OptChainExpr
source§impl Spanned for OptChainExpr
impl Spanned for OptChainExpr
source§impl Take for OptChainExpr
impl Take for OptChainExpr
impl Eq for OptChainExpr
impl StructuralPartialEq for OptChainExpr
Auto Trait Implementations§
impl Freeze for OptChainExpr
impl RefUnwindSafe for OptChainExpr
impl Send for OptChainExpr
impl Sync for OptChainExpr
impl Unpin for OptChainExpr
impl UnwindSafe for OptChainExpr
Blanket Implementations§
source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
source§impl<T> ArchiveUnsized for Twhere
T: Archive,
impl<T> ArchiveUnsized for Twhere
T: Archive,
source§type Archived = <T as Archive>::Archived
type Archived = <T as Archive>::Archived
The archived counterpart of this type. Unlike
Archive
, it may be unsized. Read moresource§type MetadataResolver = ()
type MetadataResolver = ()
The resolver for the metadata of this type. Read more
source§unsafe fn resolve_metadata(
&self,
_: usize,
_: <T as ArchiveUnsized>::MetadataResolver,
_: *mut <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata,
)
unsafe fn resolve_metadata( &self, _: usize, _: <T as ArchiveUnsized>::MetadataResolver, _: *mut <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata, )
Creates the archived version of the metadata for this value at the given position and writes
it to the given output. Read more
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> CallHasher for T
impl<T> CallHasher for T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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<T> LayoutRaw for T
impl<T> LayoutRaw for T
source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Gets the layout of the type.
source§impl<T, S> SerializeUnsized<S> for T
impl<T, S> SerializeUnsized<S> for T
source§impl<T> SpanExt for Twhere
T: Spanned,
impl<T> SpanExt for Twhere
T: Spanned,
fn is_synthesized(&self) -> bool
fn starts_on_new_line(&self, format: ListFormat) -> bool
source§fn comment_range(&self) -> Span
fn comment_range(&self) -> Span
Gets a custom text range to use when emitting comments.