DartPlaceholder class abstract
An inline Dart component that appears in a compiled sql query. Inline Dart components can be bound with complex expressions at runtime by using drift's Dart API.
At the moment, we support 4 kind of inline components:
- expressions: Any expression can be used for drift:
SELECT * FROM table = $expr
. Generated code will write this as anExpression
class from drift. - limits, which will be exposed as a
Limit
component from drift - A single order-by clause, which will be exposed as a
OrderingTerm
from drift. - A list of order-by clauses, which will be exposed as a
OrderBy
from drift.
- Inheritance
- Implemented types
- Implementers
- Available Extensions
Properties
-
allDescendants
→ Iterable<
AstNode> -
Recursively returns all descendants of this node, e.g. its children, their
children and so on. The tree will be pre-order traversed.
no setterinherited
-
childNodes
→ Iterable<
AstNode> -
All direct children of this node.
final
- first ↔ Token?
-
The first token that appears in this node. This information is not set for
all nodes.
getter/setter pairinherited
- firstPosition → int
-
The first position of this entity, as an zero-based offset in the file it
was read from.
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- hasSpan → bool
-
Whether this entity has a source span associated with it.
no setterinherited
- last ↔ Token?
-
The last token that appears in this node. This information is not set for
all nodes.
getter/setter pairinherited
- lastPosition → int
-
The (exclusive) last index of this entity in the source.
no setterinherited
- name → String
-
final
- optionalScope → ReferenceScope?
-
no setterinherited
- parent ↔ AstNode?
-
The parent of this node, or null if this is the root node. Will be set
by the analyzer after the tree has been parsed.
getter/setter pairinherited
-
parents
→ Iterable<
AstNode> -
Returns all parents of this node up to the root. If this node is the root,
the iterable will be empty.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- scope ↔ ReferenceScope
-
The ReferenceScope, which contains available tables, column references
and functions for this node.
getter/setter pairinherited
-
selfAndDescendants
→ Iterable<
AstNode> -
Returns an iterable that fields yields this node, followed by
allDescendants.
no setterinherited
-
selfAndParents
→ Iterable<
AstNode> -
Returns an iterable containing
this
node and all parents.no setterinherited - span → FileSpan?
-
The piece of text forming this syntactic entity.
no setterinherited
- statementScope → StatementScope
-
no setterinherited
- synthetic ↔ bool
-
Whether this entity is synthetic, meaning that it doesn't appear in the
actual source.
getter/setter pairinherited
- token ↔ DollarSignVariableToken?
-
getter/setter pair
Methods
-
accept<
A, R> (AstVisitor< A, R> visitor, A arg) → R -
Calls the appropriate method on the
visitor
to make it recognize this node.override -
acceptWithoutArg<
R> (AstVisitor< void, R> visitor) → R -
Like accept, but without an argument.
inherited
-
contentEquals(
AstNode other) → bool -
Whether the content of this node is equal to the
other
node of the same type. The "content" refers to anything stored only in this node, children are ignored.inherited -
enclosingOfType<
T extends AstNode> () → T? -
Finds the first element in selfAndParents of the type
T
.inherited -
isChildOf(
AstNode other) → bool -
inherited
-
meta<
T> () → T? -
Returns the metadata of type
T
that might have been set on this node, or null if none was found. Nodes can have arbitrary annotations on them set via setMeta and obtained via meta. This mechanism is used to, for instance, attach variable scopes to a subtree.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
setMeta<
T> (T value) → void -
Sets the metadata of type
T
to the specifiedvalue
. Nodes can have arbitrary annotations on them set via setMeta and obtained via meta. This mechanism is used to, for instance, attach variable scopes to a subtree.inherited -
setSpan(
Token first, Token last) → void -
Sets the AstNode.first and AstNode.last property in one go.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
transformChildren<
A> (Transformer< A> transformer, A arg) → void -
Transforms children of this node by invoking
transformer
with the argumentarg
.override -
when<
T> ({T isExpression(DartExpressionPlaceholder)?, T isLimit(DartLimitPlaceholder)?, T isOrderingTerm(DartOrderingTermPlaceholder)?, T isOrderBy(DartOrderByPlaceholder)?, T isInsertable(DartInsertablePlaceholder)?}) → T?
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited