Lines Matching refs:AstNode
33 explicit Nullish(const ir::AstNode *node) : node_(node) {}
35 const ir::AstNode *Node() const
41 const ir::AstNode *node_;
46 using Val = std::variant<const char *, const AstNode *, bool, std::vector<const AstNode *>>;
47 explicit Optional(const ir::AstNode *node) : value_(node) {}
54 std::vector<const AstNode *> nodes;
87 bool, char16_t, lexer::Number, const ir::AstNode *, std::vector<const ir::AstNode *>,
97 Property(const char *key, const ir::AstNode *node) : key_(key), value_(const_cast<ir::AstNode *>(node)) {}
112 if (std::holds_alternative<const ir::AstNode *>(value) &&
113 (std::get<const ir::AstNode *>(value) != nullptr)) {
114 value_ = std::get<const ir::AstNode *>(value);
128 if (std::holds_alternative<std::vector<const AstNode *>>(value)) {
129 const auto &array = std::get<std::vector<const AstNode *>>(value);
147 std::vector<const ir::AstNode *> nodes;
158 Property(const char *key, const ArenaVector<T> &array, const std::function<bool(AstNode *)> &filter) : key_(key)
160 std::vector<const ir::AstNode *> nodes;
192 explicit AstDumper(const ir::AstNode *node, util::StringView sourceCode = "");
234 void SerializeObject(const ir::AstNode *object);
243 void SerializeArray(std::vector<const ir::AstNode *> array);