llvm/clang/utils/TableGen/ClangSACheckersEmitter.cpp

//=- ClangSACheckersEmitter.cpp - Generate Clang SA checkers tables -*- C++ -*-
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
//
// This tablegen backend emits Clang Static Analyzer checkers tables.
//
//===----------------------------------------------------------------------===//

#include "TableGenBackends.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/TableGen/Error.h"
#include "llvm/TableGen/Record.h"
#include "llvm/TableGen/TableGenBackend.h"
#include <map>
#include <string>

usingnamespacellvm;

//===----------------------------------------------------------------------===//
// Static Analyzer Checkers Tables generation
//===----------------------------------------------------------------------===//

static std::string getPackageFullName(const Record *R, StringRef Sep = ".");

static std::string getParentPackageFullName(const Record *R,
                                            StringRef Sep = ".") {}

static std::string getPackageFullName(const Record *R, StringRef Sep) {}

static std::string getCheckerFullName(const Record *R, StringRef Sep = ".") {}

static std::string getStringValue(const Record &R, StringRef field) {}

// Calculates the integer value representing the BitsInit object
static inline uint64_t getValueFromBitsInit(const BitsInit *B, const Record &R) {}

static std::string getCheckerDocs(const Record &R) {}

/// Retrieves the type from a CmdOptionTypeEnum typed Record object. Note that
/// the class itself has to be modified for adding a new option type in
/// CheckerBase.td.
static std::string getCheckerOptionType(const Record &R) {}

static std::string getDevelopmentStage(const Record &R) {}

static bool isHidden(const Record *R) {}

static void printChecker(raw_ostream &OS, const Record &R) {}

static void printOption(raw_ostream &OS, StringRef FullName, const Record &R) {}

void clang::EmitClangSACheckers(const RecordKeeper &Records, raw_ostream &OS) {}