blob: 8089bc0662790afc8af37a290ded4f40c0966062 (
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
39
40
|
//===--- 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 className> {
string ClassName = className;
string CheckerName;
string DescFile;
string HelpText;
bit Hidden = 0;
Package ParentPackage;
CheckerGroup Group;
}
class Named<string name> { string CheckerName = name; }
class DescFile<string filename> { string DescFile = filename; }
class HelpText<string text> { string HelpText = text; }
class Hidden { bit Hidden = 1; }
|