pub enum AnyJsObjectMemberName {
JsComputedMemberName(JsComputedMemberName),
JsLiteralMemberName(JsLiteralMemberName),
}
Variants§
JsComputedMemberName(JsComputedMemberName)
JsLiteralMemberName(JsLiteralMemberName)
Implementations§
source§impl AnyJsObjectMemberName
impl AnyJsObjectMemberName
pub fn as_js_computed_member_name(&self) -> Option<&JsComputedMemberName>
pub fn as_js_literal_member_name(&self) -> Option<&JsLiteralMemberName>
source§impl AnyJsObjectMemberName
impl AnyJsObjectMemberName
sourcepub fn name(&self) -> Option<TokenText>
pub fn name(&self) -> Option<TokenText>
Returns the member name of the current node if it is a literal member name or a computed member with a literal value.
§Examples
use biome_js_syntax::{AnyJsObjectMemberName, AnyJsExpression, AnyJsLiteralExpression, T};
use biome_js_factory::make;
let name = make::js_literal_member_name(make::ident("a"));
let name = AnyJsObjectMemberName::JsLiteralMemberName(name);
assert_eq!(name.name().unwrap().text(), "a");
let quoted_name = make::js_literal_member_name(make::js_string_literal("a"));
let quoted_name = AnyJsObjectMemberName::JsLiteralMemberName(quoted_name);
assert_eq!(quoted_name.name().unwrap().text(), "a");
let number_name = make::js_literal_member_name(make::js_number_literal(42));
let number_name = AnyJsObjectMemberName::JsLiteralMemberName(number_name);
assert_eq!(number_name.name().unwrap().text(), "42");
let string_literal = make::js_string_literal_expression(make::js_string_literal("a"));
let string_literal = AnyJsExpression::AnyJsLiteralExpression(AnyJsLiteralExpression::from(string_literal));
let computed = make::js_computed_member_name(make::token(T!['[']), string_literal, make::token(T![']']));
let computed = AnyJsObjectMemberName::JsComputedMemberName(computed);
assert_eq!(computed.name().unwrap().text(), "a");
Trait Implementations§
source§impl AstNode for AnyJsObjectMemberName
impl AstNode for AnyJsObjectMemberName
type Language = JsLanguage
const KIND_SET: SyntaxKindSet<Language> = _
source§fn can_cast(kind: SyntaxKind) -> bool
fn can_cast(kind: SyntaxKind) -> bool
Returns
true
if a node with the given kind can be cased to this AST node.source§fn cast(syntax: SyntaxNode) -> Option<Self>
fn cast(syntax: SyntaxNode) -> Option<Self>
Tries to cast the passed syntax node to this AST node. Read more
source§fn syntax(&self) -> &SyntaxNode
fn syntax(&self) -> &SyntaxNode
Returns the underlying syntax node.
source§fn into_syntax(self) -> SyntaxNode
fn into_syntax(self) -> SyntaxNode
Returns the underlying syntax node.
source§fn cast_ref(syntax: &SyntaxNode<Self::Language>) -> Option<Self>where
Self: Sized,
fn cast_ref(syntax: &SyntaxNode<Self::Language>) -> Option<Self>where
Self: Sized,
Takes a reference of a syntax node and tries to cast it to this AST node. Read more
source§fn try_cast(
syntax: SyntaxNode<Self::Language>
) -> Result<Self, SyntaxNode<Self::Language>>
fn try_cast( syntax: SyntaxNode<Self::Language> ) -> Result<Self, SyntaxNode<Self::Language>>
Tries to cast the passed syntax node to this AST node. Read more
source§fn try_cast_node<T>(node: T) -> Result<Self, T>
fn try_cast_node<T>(node: T) -> Result<Self, T>
Tries to cast the AST
node
into this node. Read moresource§fn unwrap_cast(syntax: SyntaxNode<Self::Language>) -> Selfwhere
Self: Sized,
fn unwrap_cast(syntax: SyntaxNode<Self::Language>) -> Selfwhere
Self: Sized,
Cast this node to this AST node Read more
source§fn text(&self) -> String
fn text(&self) -> String
Returns the string representation of this node without the leading and trailing trivia
fn range(&self) -> TextRange
fn clone_subtree(&self) -> Selfwhere
Self: Sized,
fn parent<T>(&self) -> Option<T>
source§fn with_leading_trivia_pieces<I>(self, trivia: I) -> Option<Self>where
I: IntoIterator<Item = SyntaxTriviaPiece<Self::Language>>,
<I as IntoIterator>::IntoIter: ExactSizeIterator,
fn with_leading_trivia_pieces<I>(self, trivia: I) -> Option<Self>where
I: IntoIterator<Item = SyntaxTriviaPiece<Self::Language>>,
<I as IntoIterator>::IntoIter: ExactSizeIterator,
Return a new version of this node with the leading trivia of its first token replaced with
trivia
.source§fn with_trailing_trivia_pieces<I>(self, trivia: I) -> Option<Self>where
I: IntoIterator<Item = SyntaxTriviaPiece<Self::Language>>,
<I as IntoIterator>::IntoIter: ExactSizeIterator,
fn with_trailing_trivia_pieces<I>(self, trivia: I) -> Option<Self>where
I: IntoIterator<Item = SyntaxTriviaPiece<Self::Language>>,
<I as IntoIterator>::IntoIter: ExactSizeIterator,
Return a new version of this node with the trailing trivia of its last token replaced with
trivia
.fn prepend_trivia_pieces<I>(self, trivia: I) -> Option<Self>where
I: IntoIterator<Item = SyntaxTriviaPiece<Self::Language>>,
<I as IntoIterator>::IntoIter: ExactSizeIterator,
fn append_trivia_pieces<I>(self, trivia: I) -> Option<Self>where
I: IntoIterator<Item = SyntaxTriviaPiece<Self::Language>>,
<I as IntoIterator>::IntoIter: ExactSizeIterator,
source§fn trim_trivia(self) -> Option<Self>
fn trim_trivia(self) -> Option<Self>
Return a new version of this node without leading and trailing newlines and whitespaces.
source§fn trim_leading_trivia(self) -> Option<Self>
fn trim_leading_trivia(self) -> Option<Self>
Return a new version of this node without leading newlines and whitespaces.
source§fn trim_trailing_trivia(self) -> Option<Self>
fn trim_trailing_trivia(self) -> Option<Self>
Return a new version of this node without trailing newlines and whitespaces.
source§impl Clone for AnyJsObjectMemberName
impl Clone for AnyJsObjectMemberName
source§fn clone(&self) -> AnyJsObjectMemberName
fn clone(&self) -> AnyJsObjectMemberName
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 AnyJsObjectMemberName
impl Debug for AnyJsObjectMemberName
source§impl Display for AnyJsObjectMemberName
impl Display for AnyJsObjectMemberName
source§impl From<AnyJsObjectMemberName> for JsSyntaxElement
impl From<AnyJsObjectMemberName> for JsSyntaxElement
source§fn from(n: AnyJsObjectMemberName) -> SyntaxElement
fn from(n: AnyJsObjectMemberName) -> SyntaxElement
Converts to this type from the input type.
source§impl From<AnyJsObjectMemberName> for JsSyntaxNode
impl From<AnyJsObjectMemberName> for JsSyntaxNode
source§fn from(n: AnyJsObjectMemberName) -> SyntaxNode
fn from(n: AnyJsObjectMemberName) -> SyntaxNode
Converts to this type from the input type.
source§impl From<JsComputedMemberName> for AnyJsObjectMemberName
impl From<JsComputedMemberName> for AnyJsObjectMemberName
source§fn from(node: JsComputedMemberName) -> AnyJsObjectMemberName
fn from(node: JsComputedMemberName) -> AnyJsObjectMemberName
Converts to this type from the input type.
source§impl From<JsLiteralMemberName> for AnyJsObjectMemberName
impl From<JsLiteralMemberName> for AnyJsObjectMemberName
source§fn from(node: JsLiteralMemberName) -> AnyJsObjectMemberName
fn from(node: JsLiteralMemberName) -> AnyJsObjectMemberName
Converts to this type from the input type.
source§impl Hash for AnyJsObjectMemberName
impl Hash for AnyJsObjectMemberName
source§impl PartialEq for AnyJsObjectMemberName
impl PartialEq for AnyJsObjectMemberName
source§fn eq(&self, other: &AnyJsObjectMemberName) -> bool
fn eq(&self, other: &AnyJsObjectMemberName) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Eq for AnyJsObjectMemberName
impl StructuralPartialEq for AnyJsObjectMemberName
Auto Trait Implementations§
impl Freeze for AnyJsObjectMemberName
impl RefUnwindSafe for AnyJsObjectMemberName
impl !Send for AnyJsObjectMemberName
impl !Sync for AnyJsObjectMemberName
impl Unpin for AnyJsObjectMemberName
impl UnwindSafe for AnyJsObjectMemberName
Blanket Implementations§
source§impl<T> AstNodeExt for Twhere
T: AstNode,
impl<T> AstNodeExt for Twhere
T: AstNode,
source§fn replace_node_discard_trivia<N>(self, prev_node: N, next_node: N) -> Option<T>
fn replace_node_discard_trivia<N>(self, prev_node: N, next_node: N) -> Option<T>
source§fn replace_node<N>(self, prev_node: N, next_node: N) -> Option<T>
fn replace_node<N>(self, prev_node: N, next_node: N) -> Option<T>
Return a new version of this node with the node
prev_node
replaced with next_node
,
transfering the leading and trailing trivia of prev_node
to next_node
Read moresource§fn replace_token_discard_trivia(
self,
prev_token: SyntaxToken<<T as AstNode>::Language>,
next_token: SyntaxToken<<T as AstNode>::Language>
) -> Option<T>
fn replace_token_discard_trivia( self, prev_token: SyntaxToken<<T as AstNode>::Language>, next_token: SyntaxToken<<T as AstNode>::Language> ) -> Option<T>
source§fn replace_token(
self,
prev_token: SyntaxToken<<T as AstNode>::Language>,
next_token: SyntaxToken<<T as AstNode>::Language>
) -> Option<T>
fn replace_token( self, prev_token: SyntaxToken<<T as AstNode>::Language>, next_token: SyntaxToken<<T as AstNode>::Language> ) -> Option<T>
Return a new version of this node with the token
prev_token
replaced with next_token
,
transfering the leading and trailing trivia of prev_token
to next_token
Read morefn detach(self) -> T
source§impl<L, T> BatchMutationExt<L> for T
impl<L, T> BatchMutationExt<L> for T
source§fn begin(self) -> BatchMutation<L>
fn begin(self) -> BatchMutation<L>
It starts a BatchMutation
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.