Lines Matching refs:MatcherNode
26 class MatcherNode; variable
50 class MatcherNode {
52 virtual ~MatcherNode() = default;
58 static std::unique_ptr<MatcherNode>
70 std::unique_ptr<MatcherNode> &getFailureNode() { return failureNode; } in getFailureNode()
73 void setFailureNode(std::unique_ptr<MatcherNode> node) { in setFailureNode()
82 MatcherNode(TypeID matcherTypeID, Position *position = nullptr,
84 std::unique_ptr<MatcherNode> failureNode = nullptr);
94 std::unique_ptr<MatcherNode> failureNode;
97 std::unique_ptr<MatcherNode> failureNodeStorage;
109 struct BoolNode : public MatcherNode {
111 std::unique_ptr<MatcherNode> successNode,
112 std::unique_ptr<MatcherNode> failureNode = nullptr);
116 static bool classof(const MatcherNode *node) { in classof()
124 std::unique_ptr<MatcherNode> &getSuccessNode() { return successNode; } in getSuccessNode()
131 std::unique_ptr<MatcherNode> successNode;
138 struct ExitNode : public MatcherNode {
139 ExitNode() : MatcherNode(TypeID::get<ExitNode>()) {} in ExitNode()
143 static bool classof(const MatcherNode *node) { in classof()
154 struct SuccessNode : public MatcherNode {
156 std::unique_ptr<MatcherNode> failureNode);
160 static bool classof(const MatcherNode *node) { in classof()
184 struct SwitchNode : public MatcherNode {
189 static bool classof(const MatcherNode *node) { in classof()
196 using ChildMapT = llvm::MapVector<Qualifier *, std::unique_ptr<MatcherNode>>;
200 std::pair<Qualifier *, std::unique_ptr<MatcherNode>> &getChild(unsigned i) { in getChild()