summaryrefslogtreecommitdiffstats
path: root/include/clang/StaticAnalyzer/Checkers/CheckerBase.td
blob: e452ccfb6cebeb39db8a377ad869f574b187dd2e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
//===--- CheckerBase.td - Checker TableGen classes ------------------------===//
//
//                     The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
//  This file defines the TableGen core definitions for checkers
//
//===----------------------------------------------------------------------===//

class Package<string name> {
  string       PackageName = name;
  bit          Hidden = 0;
  Package ParentPackage;
}
class InPackage<Package P> { Package ParentPackage = P; }

class CheckerGroup<string name> {
  string GroupName = name;
}
class InGroup<CheckerGroup G> { CheckerGroup Group = G; }

// All checkers are an indirect subclass of this.
class Checker<string name = ""> {
  string      CheckerName = name;
  string      DescFile;
  string      HelpText;
  bit         Hidden = 0;
  Package ParentPackage;
  CheckerGroup Group;
}

class DescFile<string filename> { string DescFile = filename; }
class HelpText<string text> { string HelpText = text; }
class Hidden { bit Hidden = 1; }
OpenPOWER on IntegriCloud