]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/CheckerBase.td
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / contrib / llvm / tools / clang / include / clang / StaticAnalyzer / Checkers / CheckerBase.td
1 //===--- CheckerBase.td - Checker TableGen classes ------------------------===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 //  This file defines the TableGen core definitions for checkers
11 //
12 //===----------------------------------------------------------------------===//
13
14 class CheckerGroup<string name> {
15   string GroupName = name;
16 }
17 class InGroup<CheckerGroup G> { CheckerGroup Group = G; }
18
19 class Package<string name> {
20   string       PackageName = name;
21   bit          Hidden = 0;
22   Package ParentPackage;
23   CheckerGroup Group;
24 }
25 class InPackage<Package P> { Package ParentPackage = P; }
26
27 // All checkers are an indirect subclass of this.
28 class Checker<string name = ""> {
29   string      CheckerName = name;
30   string      DescFile;
31   string      HelpText;
32   bit         Hidden = 0;
33   Package ParentPackage;
34   CheckerGroup Group;
35 }
36
37 class DescFile<string filename> { string DescFile = filename; }
38 class HelpText<string text> { string HelpText = text; }
39 class Hidden { bit Hidden = 1; }