ConstantPattern class abstract
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 is not one of the valid alternatives.
constantPattern ::= 'const'? Expression
Clients may not extend, implement or mix-in this class.
- Implemented types
Constructors
Properties
- beginToken → Token
-
Return the first token included in this node's source range.
no setterinherited
-
childEntities
→ Iterable<
SyntacticEntity> -
Return 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?
-
Return the
const
keyword, ornull
if the expression is not preceded by the keywordconst
.no setter - end → int
-
Return the offset of the character immediately following the last
character of this node's source range.
no setterinherited
- endToken → Token
-
Return the last token included in this node's source range.
no setterinherited
- expression → Expression
-
Return the constant expression being used as a pattern.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- isSynthetic → bool
-
Return
true
if 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 is not 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?
-
Return this node's parent node, or
null
if this node is the root of an AST structure.no setterinherited - precedence → PatternPrecedence
-
Return the precedence of this pattern.
no setterinherited
- root → AstNode
-
Return 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, return the result of
unwrapping the pattern inside the parentheses. Otherwise, return this
pattern.
no setterinherited
Methods
-
accept<
E> (AstVisitor< E> visitor) → E? -
Use the given
visitor
to visit this node.inherited -
findPrevious(
Token target) → Token? -
Return the token before
target
ornull
if it cannot be found.inherited -
getProperty<
E> (String name) → E? -
Return the value of the property with the given
name
, ornull
if this node does not have a property with the given name.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
setProperty(
String name, Object? value) → void -
Set the value of the property with the given
name
to the givenvalue
. If the value isnull
, the property will effectively be removed.inherited -
thisOrAncestorMatching<
E extends AstNode> (bool predicate(AstNode)) → E? -
Return either this node or the most immediate ancestor of this node for
which the
predicate
returnstrue
, ornull
if there is no such node.inherited -
thisOrAncestorOfType<
E extends AstNode> () → E? -
Return either this node or the most immediate ancestor of this node that
has the given type, or
null
if there is no such node.inherited -
toSource(
) → String -
Return 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