@@ -3,23 +3,72 @@ import cpp
3
3
import RuleMetadata
4
4
import codingstandards.cpp.exclusions.RuleMetadata
5
5
6
- newtype Language2Query = TLanguageExtensionsShouldNotBeUsedQuery ( )
6
+ newtype Language2Query =
7
+ TUsageOfAssemblyLanguageShouldBeDocumentedQuery ( ) or
8
+ TLanguageExtensionsShouldNotBeUsedQuery ( ) or
9
+ TCriticalUnspecifiedBehaviourQuery ( ) or
10
+ TEmergentLanguageFeaturesUsedQuery ( )
7
11
8
12
predicate isLanguage2QueryMetadata ( Query query , string queryId , string ruleId ) {
13
+ query =
14
+ // `Query` instance for the `usageOfAssemblyLanguageShouldBeDocumented` query
15
+ Language2Package:: usageOfAssemblyLanguageShouldBeDocumentedQuery ( ) and
16
+ queryId =
17
+ // `@id` for the `usageOfAssemblyLanguageShouldBeDocumented` query
18
+ "c/misra/usage-of-assembly-language-should-be-documented" and
19
+ ruleId = "DIR-4-2"
20
+ or
9
21
query =
10
22
// `Query` instance for the `languageExtensionsShouldNotBeUsed` query
11
23
Language2Package:: languageExtensionsShouldNotBeUsedQuery ( ) and
12
24
queryId =
13
25
// `@id` for the `languageExtensionsShouldNotBeUsed` query
14
26
"c/misra/language-extensions-should-not-be-used" and
15
27
ruleId = "RULE-1-2"
28
+ or
29
+ query =
30
+ // `Query` instance for the `criticalUnspecifiedBehaviour` query
31
+ Language2Package:: criticalUnspecifiedBehaviourQuery ( ) and
32
+ queryId =
33
+ // `@id` for the `criticalUnspecifiedBehaviour` query
34
+ "c/misra/critical-unspecified-behaviour" and
35
+ ruleId = "RULE-1-3"
36
+ or
37
+ query =
38
+ // `Query` instance for the `emergentLanguageFeaturesUsed` query
39
+ Language2Package:: emergentLanguageFeaturesUsedQuery ( ) and
40
+ queryId =
41
+ // `@id` for the `emergentLanguageFeaturesUsed` query
42
+ "c/misra/emergent-language-features-used" and
43
+ ruleId = "RULE-1-4"
16
44
}
17
45
18
46
module Language2Package {
47
+ Query usageOfAssemblyLanguageShouldBeDocumentedQuery ( ) {
48
+ //autogenerate `Query` type
49
+ result =
50
+ // `Query` type for `usageOfAssemblyLanguageShouldBeDocumented` query
51
+ TQueryC ( TLanguage2PackageQuery ( TUsageOfAssemblyLanguageShouldBeDocumentedQuery ( ) ) )
52
+ }
53
+
19
54
Query languageExtensionsShouldNotBeUsedQuery ( ) {
20
55
//autogenerate `Query` type
21
56
result =
22
57
// `Query` type for `languageExtensionsShouldNotBeUsed` query
23
58
TQueryC ( TLanguage2PackageQuery ( TLanguageExtensionsShouldNotBeUsedQuery ( ) ) )
24
59
}
60
+
61
+ Query criticalUnspecifiedBehaviourQuery ( ) {
62
+ //autogenerate `Query` type
63
+ result =
64
+ // `Query` type for `criticalUnspecifiedBehaviour` query
65
+ TQueryC ( TLanguage2PackageQuery ( TCriticalUnspecifiedBehaviourQuery ( ) ) )
66
+ }
67
+
68
+ Query emergentLanguageFeaturesUsedQuery ( ) {
69
+ //autogenerate `Query` type
70
+ result =
71
+ // `Query` type for `emergentLanguageFeaturesUsed` query
72
+ TQueryC ( TLanguage2PackageQuery ( TEmergentLanguageFeaturesUsedQuery ( ) ) )
73
+ }
25
74
}
0 commit comments