pub struct JsRegexLiteralExpression { /* private fields */ }
Implementations§
source§impl JsRegexLiteralExpression
impl JsRegexLiteralExpression
sourcepub const unsafe fn new_unchecked(syntax: SyntaxNode) -> Self
pub const unsafe fn new_unchecked(syntax: SyntaxNode) -> Self
Create an AstNode from a SyntaxNode without checking its kind
§Safety
This function must be guarded with a call to AstNode::can_cast or a match on SyntaxNode::kind
pub fn as_fields(&self) -> JsRegexLiteralExpressionFields
pub fn value_token(&self) -> SyntaxResult<SyntaxToken>
source§impl JsRegexLiteralExpression
impl JsRegexLiteralExpression
pub fn with_value_token(self, element: SyntaxToken) -> Self
source§impl JsRegexLiteralExpression
impl JsRegexLiteralExpression
sourcepub fn decompose(&self) -> SyntaxResult<(TokenText, TokenText)>
pub fn decompose(&self) -> SyntaxResult<(TokenText, TokenText)>
Decompose a regular expression into its pattern and flags.
use biome_js_factory::make;
use biome_js_syntax::{JsSyntaxKind, JsSyntaxToken};
let token = JsSyntaxToken::new_detached(JsSyntaxKind::JS_REGEX_LITERAL, &format!("/a+/igu"), [], []);
let regex = make::js_regex_literal_expression(token);
let (pattern, flags) = regex.decompose().unwrap();
assert_eq!(pattern.text(), "a+");
assert_eq!(flags.text(), "igu");
let token = JsSyntaxToken::new_detached(JsSyntaxKind::JS_REGEX_LITERAL, &format!("/a+/"), [], []);
let regex = make::js_regex_literal_expression(token);
let (pattern, flags) = regex.decompose().unwrap();
assert_eq!(pattern.text(), "a+");
assert_eq!(flags.text(), "");
let token = JsSyntaxToken::new_detached(JsSyntaxKind::JS_REGEX_LITERAL, &format!("/a+"), [], []);
let regex = make::js_regex_literal_expression(token);
let (pattern, flags) = regex.decompose().unwrap();
assert_eq!(pattern.text(), "a+");
assert_eq!(flags.text(), "");
Trait Implementations§
source§impl AstNode for JsRegexLiteralExpression
impl AstNode for JsRegexLiteralExpression
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 JsRegexLiteralExpression
impl Clone for JsRegexLiteralExpression
source§fn clone(&self) -> JsRegexLiteralExpression
fn clone(&self) -> JsRegexLiteralExpression
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 JsRegexLiteralExpression
impl Debug for JsRegexLiteralExpression
source§impl Display for JsRegexLiteralExpression
impl Display for JsRegexLiteralExpression
source§impl From<JsRegexLiteralExpression> for AnyJsLiteralExpression
impl From<JsRegexLiteralExpression> for AnyJsLiteralExpression
source§fn from(node: JsRegexLiteralExpression) -> AnyJsLiteralExpression
fn from(node: JsRegexLiteralExpression) -> AnyJsLiteralExpression
Converts to this type from the input type.
source§impl From<JsRegexLiteralExpression> for JsSyntaxElement
impl From<JsRegexLiteralExpression> for JsSyntaxElement
source§fn from(n: JsRegexLiteralExpression) -> SyntaxElement
fn from(n: JsRegexLiteralExpression) -> SyntaxElement
Converts to this type from the input type.
source§impl From<JsRegexLiteralExpression> for JsSyntaxNode
impl From<JsRegexLiteralExpression> for JsSyntaxNode
source§fn from(n: JsRegexLiteralExpression) -> SyntaxNode
fn from(n: JsRegexLiteralExpression) -> SyntaxNode
Converts to this type from the input type.
source§impl Hash for JsRegexLiteralExpression
impl Hash for JsRegexLiteralExpression
source§impl PartialEq for JsRegexLiteralExpression
impl PartialEq for JsRegexLiteralExpression
source§fn eq(&self, other: &JsRegexLiteralExpression) -> bool
fn eq(&self, other: &JsRegexLiteralExpression) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Eq for JsRegexLiteralExpression
impl StructuralPartialEq for JsRegexLiteralExpression
Auto Trait Implementations§
impl Freeze for JsRegexLiteralExpression
impl RefUnwindSafe for JsRegexLiteralExpression
impl !Send for JsRegexLiteralExpression
impl !Sync for JsRegexLiteralExpression
impl Unpin for JsRegexLiteralExpression
impl UnwindSafe for JsRegexLiteralExpression
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.