A constant expression being used as a pattern.
The only expressions that can be validly used as a pattern are
bool
literalsdouble
literalsint
literalsnull
literalsString
literals- references to constant variables
- constant constructor invocations
- constant list literals
- constant set or map literals
- constant expressions wrapped in parentheses and preceded by the
const
keyword
This node is also used to recover from cases where a different kind of expression is used as a pattern, so clients need to handle the case where the expression isn't one of the valid alternatives.
constantPattern ::= 'const'? Expression
- Implemented types
Properties
- beginToken → Token
-
The first token included in this node's source range.
no setterinherited
-
childEntities
→ Iterable<
SyntacticEntity> -
An iterator that can be used to iterate through all the entities (either
AST nodes or tokens) that make up the contents of this node, including doc
comments but excluding other comments.
no setterinherited
- constKeyword → Token?
-
The
const
keyword, ornull
if the expression isn't preceded by the keywordconst
.no setter - end → int
-
The offset of the character immediately following the last character of
this node's source range.
no setterinherited
- endToken → Token
-
The last token included in this node's source range.
no setterinherited
- expression → Expression
-
The constant expression being used as a pattern.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- isSynthetic → bool
-
Whether this node is a synthetic node.
no setterinherited
- length → int
-
Return the number of characters in the syntactic entity's source range.
no setterinherited
- matchedValueType → DartType?
-
The matched value type, or
null
if the node isn't resolved yet.no setterinherited - offset → int
-
Return the offset from the beginning of the file to the first character in
the syntactic entity.
no setterinherited
- parent → AstNode?
-
Returns this node's parent node, or
null
if this node is the root of an AST structure.no setterinherited - precedence → PatternPrecedence
-
The precedence of this pattern.
no setterinherited
- root → AstNode
-
The node at the root of this node's AST structure.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- unParenthesized → DartPattern
-
If this pattern is a parenthesized pattern, the result of unwrapping the
pattern inside the parentheses. Otherwise, this pattern.
no setterinherited
Methods
-
accept<
E> (AstVisitor< E> visitor) → E? -
Use the given
visitor
to visit this node.inherited -
findPrevious(
Token target) → Token? -
Returns the token before
target
, ornull
if it can't be found.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
thisOrAncestorMatching<
E extends AstNode> (bool predicate(AstNode)) → E? -
Returns either this node or the most immediate ancestor of this node for
which the
predicate
returnstrue
, ornull
if there's no such node.inherited -
thisOrAncestorOfType<
E extends AstNode> () → E? -
Returns either this node or the most immediate ancestor of this node that
has the given type, or
null
if there's no such node.inherited -
toSource(
) → String -
Returns a textual description of this node in a form approximating valid
source.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
visitChildren(
AstVisitor visitor) → void -
Use the given
visitor
to visit all of the children of this node.inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited