Lines Matching refs:VariantMatcher
56 VariantMatcher::MatcherOps::canConstructFrom(const DynTypedMatcher &Matcher,
63 VariantMatcher::MatcherOps::constructVariadicOperator(
65 ArrayRef<VariantMatcher> InnerMatchers) const {
81 VariantMatcher::Payload::~Payload() {}
83 class VariantMatcher::SinglePayload : public VariantMatcher::Payload {
114 class VariantMatcher::PolymorphicPayload : public VariantMatcher::Payload {
180 class VariantMatcher::VariadicOpPayload : public VariantMatcher::Payload {
183 std::vector<VariantMatcher> Args)
207 for (const VariantMatcher &Matcher : Args) {
216 const std::vector<VariantMatcher> Args;
219 VariantMatcher::VariantMatcher() {}
221 VariantMatcher VariantMatcher::SingleMatcher(const DynTypedMatcher &Matcher) {
222 return VariantMatcher(std::make_shared<SinglePayload>(Matcher));
225 VariantMatcher
226 VariantMatcher::PolymorphicMatcher(std::vector<DynTypedMatcher> Matchers) {
227 return VariantMatcher(
231 VariantMatcher VariantMatcher::VariadicOperatorMatcher(
233 std::vector<VariantMatcher> Args) {
234 return VariantMatcher(
238 llvm::Optional<DynTypedMatcher> VariantMatcher::getSingleMatcher() const {
242 void VariantMatcher::reset() { Value.reset(); }
244 std::string VariantMatcher::getTypeAsString() const {
269 VariantValue::VariantValue(const VariantMatcher &Matcher) : Type(VT_Nothing) {
383 const VariantMatcher &VariantValue::getMatcher() const {
388 void VariantValue::setMatcher(const VariantMatcher &NewValue) {
391 Value.Matcher = new VariantMatcher(NewValue);