Skip to content

Commit 1c0f60f

Browse files
committed
Rust: lines of code, exclude 'SourceFile' node
1 parent 24f2485 commit 1c0f60f

File tree

5 files changed

+11
-7
lines changed

5 files changed

+11
-7
lines changed

rust/ql/lib/codeql/files/FileSystem.qll

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
private import codeql.Locations
44
private import codeql.util.FileSystem
5+
private import codeql.rust.elements.SourceFile
6+
private import codeql.rust.elements.AstNode
57

68
private module Input implements InputSig {
79
abstract class ContainerBase extends @container {
@@ -41,8 +43,10 @@ class File extends Container, Impl::File {
4143
int getNumberOfLinesOfCode() {
4244
result =
4345
count(int line |
44-
exists(Location loc |
45-
loc.getFile() = this and
46+
exists(AstNode node, Location loc |
47+
not node instanceof SourceFile and loc = node.getLocation()
48+
|
49+
node.getFile() = this and
4650
line = [loc.getStartLine(), loc.getEndLine()] and
4751
not loc instanceof EmptyLocation
4852
)
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
| 49 |
1+
| 48 |
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
| 49 |
1+
| 48 |
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
| my_struct.rs:0:0:0:0 | my_struct.rs | 21 |
22
| my_macro.rs:0:0:0:0 | my_macro.rs | 8 |
3-
| lib.rs:0:0:0:0 | lib.rs | 7 |
43
| main.rs:0:0:0:0 | main.rs | 7 |
4+
| lib.rs:0:0:0:0 | lib.rs | 6 |
55
| does_not_compile.rs:0:0:0:0 | does_not_compile.rs | 3 |
66
| error.rs:0:0:0:0 | error.rs | 3 |
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
| Elements extracted | 204 |
22
| Elements unextracted | 0 |
33
| Files extracted | 6 |
4-
| Lines of code extracted | 49 |
5-
| Lines of user code extracted | 49 |
4+
| Lines of code extracted | 48 |
5+
| Lines of user code extracted | 48 |

0 commit comments

Comments
 (0)