Home | History | Annotate | Download | only in ast

Lines Matching refs:labels

255 // statement.  The BreakableStatement AST node carries a list of labels, any of
259 // Since we don't want to attach a list of labels to all kinds of statements, we
266 // This optimization makes it harder to detect invalid continue labels, see the
276 // A list of all labels declared on the path up to the previous
280 // labels() of the ForStatement will be l1.
281 // labels() of the Block { l4: ... } will be l2, l3.
282 // labels() of the Block { s } will be l4, l5.
283 ZonePtrList<const AstRawString>* labels() const;
310 inline ZonePtrList<const AstRawString>* labels() const;
314 labels() == nullptr; // Good enough as an approximation...
332 Block(Zone* zone, ZonePtrList<const AstRawString>* labels, int capacity,
338 IsLabeledField::encode(labels != nullptr);
347 LabeledBlock(Zone* zone, ZonePtrList<const AstRawString>* labels,
349 : Block(zone, labels, capacity, ignore_completion_value),
350 labels_(labels) {
351 DCHECK_NOT_NULL(labels);
352 DCHECK_GT(labels->length(), 0);
358 inline ZonePtrList<const AstRawString>* Block::labels() const {
465 ZonePtrList<const AstRawString>* labels() const { return labels_; }
467 // A list of all labels that the iteration statement is directly prefixed
468 // with, i.e. all the labels that a continue statement in the body can use to
469 // continue this iteration statement. This is always a subset of {labels}.
472 // labels() of the Block will be l1.
473 // labels() of the ForStatement will be l2, l3, l4.
478 IterationStatement(ZonePtrList<const AstRawString>* labels,
482 labels_(labels),
509 DoWhileStatement(ZonePtrList<const AstRawString>* labels,
511 : IterationStatement(labels, own_labels, pos, kDoWhileStatement),
530 WhileStatement(ZonePtrList<const AstRawString>* labels,
532 : IterationStatement(labels, own_labels, pos, kWhileStatement),
556 ForStatement(ZonePtrList<const AstRawString>* labels,
558 : IterationStatement(labels, own_labels, pos, kForStatement),
583 ForEachStatement(ZonePtrList<const AstRawString>* labels,
586 : IterationStatement(labels, own_labels, pos, type) {}
611 ForInStatement(ZonePtrList<const AstRawString>* labels,
613 : ForEachStatement(labels, own_labels, pos, kForInStatement),
678 ForOfStatement(ZonePtrList<const AstRawString>* labels,
680 : ForEachStatement(labels, own_labels, pos, kForOfStatement),
820 ZonePtrList<const AstRawString>* labels() const { return labels_; }
830 SwitchStatement(Zone* zone, ZonePtrList<const AstRawString>* labels,
833 labels_(labels),
2849 ZonePtrList<const AstRawString>* labels = nullptr) {
2850 return labels != nullptr
2851 ? new (zone_) LabeledBlock(zone_, labels, capacity,
2854 Block(zone_, labels, capacity, ignore_completion_value);
2858 NodeType* New##NodeType(ZonePtrList<const AstRawString>* labels, \
2861 return new (zone_) NodeType(labels, own_labels, pos); \
2868 SwitchStatement* NewSwitchStatement(ZonePtrList<const AstRawString>* labels,
2870 return new (zone_) SwitchStatement(zone_, labels, tag, pos);
2875 ZonePtrList<const AstRawString>* labels,
2879 return new (zone_) ForInStatement(labels, own_labels, pos);
2882 return new (zone_) ForOfStatement(labels, own_labels, pos);
2888 ForOfStatement* NewForOfStatement(ZonePtrList<const AstRawString>* labels,
2891 return new (zone_) ForOfStatement(labels, own_labels, pos);