clang-tools 22.0.0git
ProTypeMemberInitCheck.cpp File Reference
#include "ProTypeMemberInitCheck.h"
#include "../utils/LexerUtils.h"
#include "../utils/Matchers.h"
#include "../utils/TypeTraits.h"
#include "clang/AST/ASTContext.h"
#include "clang/ASTMatchers/ASTMatchFinder.h"
#include "clang/Lex/Lexer.h"
#include "llvm/ADT/SmallPtrSet.h"

Go to the source code of this file.

Namespaces

namespace  clang
 ===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
namespace  clang::tidy
namespace  clang::tidy::cppcoreguidelines

Functions

template<typename T, typename Func>
static void clang::tidy::cppcoreguidelines::forEachField (const RecordDecl &Record, const T &Fields, const Func &Fn)
template<typename T, typename Func>
static void clang::tidy::cppcoreguidelines::forEachFieldWithFilter (const RecordDecl &Record, const T &Fields, bool &AnyMemberHasInitPerUnion, const Func &Fn)
static void clang::tidy::cppcoreguidelines::removeFieldInitialized (const FieldDecl *M, SmallPtrSetImpl< const FieldDecl * > &FieldDecls)
static void clang::tidy::cppcoreguidelines::removeFieldsInitializedInBody (const Stmt &Stmt, ASTContext &Context, SmallPtrSetImpl< const FieldDecl * > &FieldDecls)
static StringRef clang::tidy::cppcoreguidelines::getName (const FieldDecl *Field)
static StringRef clang::tidy::cppcoreguidelines::getName (const RecordDecl *Record)
template<typename R, typename T>
static std::string clang::tidy::cppcoreguidelines::toCommaSeparatedString (const R &OrderedDecls, const SmallPtrSetImpl< const T * > &DeclsToInit)
static SourceLocation clang::tidy::cppcoreguidelines::getLocationForEndOfToken (const ASTContext &Context, SourceLocation Location)
static const RecordDecl * clang::tidy::cppcoreguidelines::getCanonicalRecordDecl (const QualType &Type)
template<typename R, typename T>
static SmallVector< InitializerInsertion, 16 > clang::tidy::cppcoreguidelines::computeInsertions (const CXXConstructorDecl::init_const_range &Inits, const R &OrderedDecls, const SmallPtrSetImpl< const T * > &DeclsToInit)
static void clang::tidy::cppcoreguidelines::getInitializationsInOrder (const CXXRecordDecl &ClassDecl, SmallVectorImpl< const NamedDecl * > &Decls)
template<typename T>
static void clang::tidy::cppcoreguidelines::fixInitializerList (const ASTContext &Context, DiagnosticBuilder &Diag, const CXXConstructorDecl *Ctor, const SmallPtrSetImpl< const T * > &DeclsToInit)
static bool clang::tidy::cppcoreguidelines::isIncompleteOrZeroLengthArrayType (ASTContext &Context, QualType T)
static bool clang::tidy::cppcoreguidelines::isEmpty (ASTContext &Context, const QualType &Type)
static llvm::StringLiteral clang::tidy::cppcoreguidelines::getInitializer (QualType QT, bool UseAssignment)