11import csharp
22
3- class ExternalDefect extends @externalDefect, Element {
3+ class ExternalElement extends @external_element {
4+ /** Gets a textual representation of this element. */
5+ string toString ( ) { none ( ) }
6+
7+ /** Gets the location of this element. */
8+ Location getLocation ( ) { none ( ) }
9+
10+ /** Gets the file containing this element. */
11+ File getFile ( ) { result = getLocation ( ) .getFile ( ) }
12+ }
13+
14+ class ExternalDefect extends ExternalElement , @externalDefect {
415 string getQueryPath ( ) {
516 exists ( string path |
617 externalDefects ( this , path , _, _, _) and
@@ -19,7 +30,7 @@ class ExternalDefect extends @externalDefect, Element {
1930 }
2031}
2132
22- class ExternalMetric extends @externalMetric , Element {
33+ class ExternalMetric extends ExternalElement , @externalMetric {
2334 string getQueryPath ( ) { externalMetrics ( this , result , _, _) }
2435
2536 float getValue ( ) { externalMetrics ( this , _, _, result ) }
@@ -29,7 +40,7 @@ class ExternalMetric extends @externalMetric, Element {
2940 override string toString ( ) { result = getQueryPath ( ) + ": " + getLocation ( ) + " - " + getValue ( ) }
3041}
3142
32- class ExternalData extends @externalDataElement {
43+ class ExternalData extends ExternalElement , @externalDataElement {
3344 string getDataPath ( ) { externalData ( this , result , _, _) }
3445
3546 string getQueryPath ( ) { result = getDataPath ( ) .regexpReplaceAll ( "\\.[^.]*$" , ".ql" ) }
@@ -44,7 +55,7 @@ class ExternalData extends @externalDataElement {
4455
4556 date getFieldAsDate ( int index ) { result = getField ( index ) .toDate ( ) }
4657
47- string toString ( ) { result = getQueryPath ( ) + ": " + buildTupleString ( 0 ) }
58+ override string toString ( ) { result = getQueryPath ( ) + ": " + buildTupleString ( 0 ) }
4859
4960 private string buildTupleString ( int start ) {
5061 start = getNumFields ( ) - 1 and result = getField ( start )
0 commit comments