3
3
namespace codeql {
4
4
5
5
codeql::NamedPattern PatternTranslator::translateNamedPattern (const swift::NamedPattern& pattern) {
6
- auto entry = dispatcher.createEntry (pattern);
6
+
7
+ auto entry = createPatternEntry (pattern);
8
+ entry.name = pattern.getNameStr ().str ();
7
9
entry.var_decl = dispatcher.fetchLabel (pattern.getDecl ());
8
10
return entry;
9
11
}
10
12
11
13
codeql::TypedPattern PatternTranslator::translateTypedPattern (const swift::TypedPattern& pattern) {
12
- auto entry = dispatcher. createEntry (pattern);
14
+ auto entry = createPatternEntry (pattern);
13
15
entry.sub_pattern = dispatcher.fetchLabel (pattern.getSubPattern ());
14
16
entry.type_repr = dispatcher.fetchOptionalLabel (pattern.getTypeRepr (), pattern.getType ());
15
17
return entry;
16
18
}
17
19
18
20
codeql::TuplePattern PatternTranslator::translateTuplePattern (const swift::TuplePattern& pattern) {
19
- auto entry = dispatcher. createEntry (pattern);
21
+ auto entry = createPatternEntry (pattern);
20
22
for (const auto & p : pattern.getElements ()) {
21
23
entry.elements .push_back (dispatcher.fetchLabel (p.getPattern ()));
22
24
}
23
25
return entry;
24
26
}
25
27
codeql::AnyPattern PatternTranslator::translateAnyPattern (const swift::AnyPattern& pattern) {
26
- auto entry = dispatcher. createEntry (pattern);
28
+ auto entry = createPatternEntry (pattern);
27
29
return entry;
28
30
}
29
31
30
32
codeql::BindingPattern PatternTranslator::translateBindingPattern (
31
33
const swift::BindingPattern& pattern) {
32
- auto entry = dispatcher. createEntry (pattern);
34
+ auto entry = createPatternEntry (pattern);
33
35
entry.sub_pattern = dispatcher.fetchLabel (pattern.getSubPattern ());
34
36
return entry;
35
37
}
36
38
37
39
codeql::EnumElementPattern PatternTranslator::translateEnumElementPattern (
38
40
const swift::EnumElementPattern& pattern) {
39
- auto entry = dispatcher. createEntry (pattern);
41
+ auto entry = createPatternEntry (pattern);
40
42
entry.element = dispatcher.fetchLabel (pattern.getElementDecl ());
41
43
entry.sub_pattern = dispatcher.fetchOptionalLabel (pattern.getSubPattern ());
42
44
return entry;
43
45
}
44
46
45
47
codeql::OptionalSomePattern PatternTranslator::translateOptionalSomePattern (
46
48
const swift::OptionalSomePattern& pattern) {
47
- auto entry = dispatcher. createEntry (pattern);
49
+ auto entry = createPatternEntry (pattern);
48
50
entry.sub_pattern = dispatcher.fetchLabel (pattern.getSubPattern ());
49
51
return entry;
50
52
}
51
53
52
54
codeql::IsPattern PatternTranslator::translateIsPattern (const swift::IsPattern& pattern) {
53
- auto entry = dispatcher. createEntry (pattern);
55
+ auto entry = createPatternEntry (pattern);
54
56
entry.cast_type_repr =
55
57
dispatcher.fetchOptionalLabel (pattern.getCastTypeRepr (), pattern.getCastType ());
56
58
entry.sub_pattern = dispatcher.fetchOptionalLabel (pattern.getSubPattern ());
57
59
return entry;
58
60
}
59
61
60
62
codeql::ExprPattern PatternTranslator::translateExprPattern (const swift::ExprPattern& pattern) {
61
- auto entry = dispatcher. createEntry (pattern);
63
+ auto entry = createPatternEntry (pattern);
62
64
if (auto match = pattern.getMatchExpr ()) {
63
65
entry.sub_expr = dispatcher.fetchLabel (match);
64
66
} else {
@@ -68,13 +70,13 @@ codeql::ExprPattern PatternTranslator::translateExprPattern(const swift::ExprPat
68
70
}
69
71
70
72
codeql::ParenPattern PatternTranslator::translateParenPattern (const swift::ParenPattern& pattern) {
71
- auto entry = dispatcher. createEntry (pattern);
73
+ auto entry = createPatternEntry (pattern);
72
74
entry.sub_pattern = dispatcher.fetchLabel (pattern.getSubPattern ());
73
75
return entry;
74
76
}
75
77
76
78
codeql::BoolPattern PatternTranslator::translateBoolPattern (const swift::BoolPattern& pattern) {
77
- auto entry = dispatcher. createEntry (pattern);
79
+ auto entry = createPatternEntry (pattern);
78
80
entry.value = pattern.getValue ();
79
81
return entry;
80
82
}
0 commit comments