broader support for AST traversal, including Attr and Attributes objects

This commit is contained in:
Vern Paxson 2022-05-04 17:07:18 -07:00 committed by Tim Wojtulewicz
parent 9a2200e60a
commit a0fc8ca5e4
10 changed files with 280 additions and 23 deletions

View file

@ -1208,6 +1208,8 @@ public:
ValPtr Eval(Frame* f) const override;
TraversalCode Traverse(TraversalCallback* cb) const override;
// Optimization-related:
ExprPtr Duplicate() override;
@ -1232,6 +1234,8 @@ public:
ValPtr Eval(Frame* f) const override;
TraversalCode Traverse(TraversalCallback* cb) const override;
// Optimization-related:
ExprPtr Duplicate() override;
@ -1479,6 +1483,7 @@ private:
void CheckCaptures(StmtPtr when_parent);
std::unique_ptr<function_ingredients> ingredients;
IDPtr lambda_id;
IDPList outer_ids;
bool capture_by_ref; // if true, use deprecated reference semantics