@@ -3,9 +3,8 @@ private import codeql_ql.ast.internal.TreeSitter
33
44class Object extends JSON:: Object {
55 JSON:: Value getValue ( string key ) {
6- exists ( JSON:: Pair p |
7- p = this .getChild ( _) and p .getKey ( ) .( JSON:: String ) .getChild ( ) .getValue ( ) = key
8- |
6+ exists ( JSON:: Pair p | p = this .getChild ( _) |
7+ key = p .getKey ( ) .( JSON:: String ) .getChild ( ) .getValue ( ) and
98 result = p .getValue ( )
109 )
1110 }
@@ -35,104 +34,106 @@ class Array extends JSON::Array {
3534 Array getArray ( int i ) { result = this .getChild ( i ) }
3635}
3736
38- abstract class LogEntry extends Object { }
37+ module EvaluatorLog {
38+ class Entry extends Object { }
3939
40- class LogHeader extends LogEntry {
41- LogHeader ( ) { this .getType ( ) = "LOG_HEADER" }
40+ class LogHeader extends Entry {
41+ LogHeader ( ) { this .getType ( ) = "LOG_HEADER" }
4242
43- string getCodeQLVersion ( ) { result = this .getString ( "codeqlVersion" ) }
43+ string getCodeQLVersion ( ) { result = this .getString ( "codeqlVersion" ) }
4444
45- string getLogVersion ( ) { result = this .getString ( "logVersion" ) }
46- }
45+ string getLogVersion ( ) { result = this .getString ( "logVersion" ) }
46+ }
4747
48- class QueryStarted extends LogEntry {
49- QueryStarted ( ) { this .getType ( ) = "QUERY_STARTED" }
48+ class QueryStarted extends Entry {
49+ QueryStarted ( ) { this .getType ( ) = "QUERY_STARTED" }
5050
51- string getQueryName ( ) { result = this .getString ( "queryName" ) }
51+ string getQueryName ( ) { result = this .getString ( "queryName" ) }
5252
53- int getStage ( int i ) { result = this .getArray ( "stage" ) .getNumber ( i ) }
54- }
53+ int getStage ( int i ) { result = this .getArray ( "stage" ) .getNumber ( i ) }
54+ }
5555
56- class PredicateStarted extends LogEntry {
57- PredicateStarted ( ) { this .getType ( ) = "PREDICATE_STARTED" }
56+ class PredicateStarted extends Entry {
57+ PredicateStarted ( ) { this .getType ( ) = "PREDICATE_STARTED" }
5858
59- string getPredicateName ( ) { result = this .getString ( "predicateName" ) }
59+ string getPredicateName ( ) { result = this .getString ( "predicateName" ) }
6060
61- string getPosition ( ) { result = this .getString ( "position" ) }
61+ string getPosition ( ) { result = this .getString ( "position" ) }
6262
63- string getPredicateType ( ) { result = this .getString ( "predicateType" ) }
63+ string getPredicateType ( ) { result = this .getString ( "predicateType" ) }
6464
65- int getQueryCausingWork ( ) { result = this .getNumber ( "queryCausingWork" ) }
65+ int getQueryCausingWork ( ) { result = this .getNumber ( "queryCausingWork" ) }
6666
67- string getRAHash ( ) { result = this .getString ( "raHash" ) }
67+ string getRAHash ( ) { result = this .getString ( "raHash" ) }
6868
69- Object getRA ( ) { result = this .getValue ( "ra" ) }
69+ Object getRA ( ) { result = this .getValue ( "ra" ) }
7070
71- string getDependency ( string key ) { result = this .getObject ( "dependencies" ) .getString ( key ) }
72- }
71+ string getDependency ( string key ) { result = this .getObject ( "dependencies" ) .getString ( key ) }
72+ }
7373
74- class PipelineStarted extends LogEntry {
75- PipelineStarted ( ) { this .getType ( ) = "PIPELINE_STARTED" }
74+ class PipelineStarted extends Entry {
75+ PipelineStarted ( ) { this .getType ( ) = "PIPELINE_STARTED" }
7676
77- int getPredicateStartEvent ( ) { result = this .getNumber ( "predicateStartEvent" ) }
77+ int getPredicateStartEvent ( ) { result = this .getNumber ( "predicateStartEvent" ) }
7878
79- string getRAReference ( ) { result = this .getString ( "raReference" ) }
80- }
79+ string getRAReference ( ) { result = this .getString ( "raReference" ) }
80+ }
8181
82- class PipelineCompleted extends LogEntry {
83- PipelineCompleted ( ) { this .getType ( ) = "PIPELINE_COMPLETED" }
82+ class PipelineCompleted extends Entry {
83+ PipelineCompleted ( ) { this .getType ( ) = "PIPELINE_COMPLETED" }
8484
85- int getStartEvent ( ) { result = this .getNumber ( "startEvent" ) }
85+ int getStartEvent ( ) { result = this .getNumber ( "startEvent" ) }
8686
87- string getRAReference ( ) { result = this .getString ( "raReference" ) }
87+ string getRAReference ( ) { result = this .getString ( "raReference" ) }
8888
89- int getCount ( int i ) { result = this .getArray ( "counts" ) .getNumber ( i ) }
89+ int getCount ( int i ) { result = this .getArray ( "counts" ) .getNumber ( i ) }
9090
91- int getDuplicationPercentage ( int i ) {
92- result = this .getArray ( "duplicationPercentages" ) .getNumber ( i )
93- }
91+ int getDuplicationPercentage ( int i ) {
92+ result = this .getArray ( "duplicationPercentages" ) .getNumber ( i )
93+ }
9494
95- int getResultSize ( ) { result = this .getNumber ( "resultSize" ) }
96- }
95+ int getResultSize ( ) { result = this .getNumber ( "resultSize" ) }
96+ }
9797
98- class PredicateCompleted extends LogEntry {
99- PredicateCompleted ( ) { this .getType ( ) = "PREDICATE_COMPLETED" }
98+ class PredicateCompleted extends Entry {
99+ PredicateCompleted ( ) { this .getType ( ) = "PREDICATE_COMPLETED" }
100100
101- int getStartEvent ( ) { result = this .getNumber ( "startEvent" ) }
101+ int getStartEvent ( ) { result = this .getNumber ( "startEvent" ) }
102102
103- int getResultSize ( ) { result = this .getNumber ( "resultSize" ) }
104- }
103+ int getResultSize ( ) { result = this .getNumber ( "resultSize" ) }
104+ }
105105
106- class QueryCompleted extends LogEntry {
107- QueryCompleted ( ) { this .getType ( ) = "QUERY_COMPLETED" }
106+ class QueryCompleted extends Entry {
107+ QueryCompleted ( ) { this .getType ( ) = "QUERY_COMPLETED" }
108108
109- int getStartEvent ( ) { result = this .getNumber ( "startEvent" ) }
109+ int getStartEvent ( ) { result = this .getNumber ( "startEvent" ) }
110110
111- string getTerminationType ( ) { result = this .getString ( "terminationType" ) }
112- }
111+ string getTerminationType ( ) { result = this .getString ( "terminationType" ) }
112+ }
113113
114- class LogFooter extends LogEntry {
115- LogFooter ( ) { this .getType ( ) = "LOG_FOOTER" }
116- }
114+ class LogFooter extends Entry {
115+ LogFooter ( ) { this .getType ( ) = "LOG_FOOTER" }
116+ }
117117
118- class CacheLookup extends LogEntry {
119- CacheLookup ( ) { this .getType ( ) = "CACHE_LOOKUP" }
118+ class CacheLookup extends Entry {
119+ CacheLookup ( ) { this .getType ( ) = "CACHE_LOOKUP" }
120120
121- int getRelationSize ( ) { result = this .getNumber ( "relationSize" ) }
122- }
121+ int getRelationSize ( ) { result = this .getNumber ( "relationSize" ) }
122+ }
123123
124- class SentinelEmpty extends LogEntry {
125- SentinelEmpty ( ) { this .getType ( ) = "SENTINEL_EMPTY" }
124+ class SentinelEmpty extends Entry {
125+ SentinelEmpty ( ) { this .getType ( ) = "SENTINEL_EMPTY" }
126+ }
126127}
127128
128129// Stuff to test whether we've covered all event types
129- private File logFile ( ) { result = any ( LogHeader h ) .getLocation ( ) .getFile ( ) }
130+ private File logFile ( ) { result = any ( EvaluatorLog :: LogHeader h ) .getLocation ( ) .getFile ( ) }
130131
131132private Object missing ( ) {
132133 result =
133134 any ( Object o |
134135 o .getLocation ( ) .getFile ( ) = logFile ( ) and
135- not o instanceof LogEntry and
136+ not o instanceof EvaluatorLog :: Entry and
136137 not exists ( o .getParent ( ) .getParent ( ) ) // don't count nested objects
137138 )
138139}
0 commit comments