brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1020 B · 2997d7d Raw
28 lines · cpp
1//===----------------------------------------------------------------------===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8 9#include "SharedPtrArrayMismatchCheck.h"10 11using namespace clang::ast_matchers;12 13namespace clang::tidy::bugprone {14 15SharedPtrArrayMismatchCheck::SharedPtrArrayMismatchCheck(16    StringRef Name, ClangTidyContext *Context)17    : SmartPtrArrayMismatchCheck(Name, Context, "shared") {}18 19SharedPtrArrayMismatchCheck::SmartPtrClassMatcher20SharedPtrArrayMismatchCheck::getSmartPointerClassMatcher() const {21  return classTemplateSpecializationDecl(22      hasName("::std::shared_ptr"), templateArgumentCountIs(1),23      hasTemplateArgument(24          0, templateArgument(refersToType(qualType().bind(PointerTypeN)))));25}26 27} // namespace clang::tidy::bugprone28