Rust: For now exclude top-level AST elements from LOC counts. This is not ideal.

This commit is contained in:
Geoffrey White
2024-10-01 17:35:30 +01:00
parent 74826032ef
commit 3a54c10f36
5 changed files with 9 additions and 7 deletions

View File

@@ -5,6 +5,7 @@ private import codeql.util.FileSystem
private import codeql.rust.elements.SourceFile
private import codeql.rust.elements.AstNode
private import codeql.rust.elements.Comment
private import codeql.rust.elements.internal.generated.ParentChild
private module Input implements InputSig {
abstract class ContainerBase extends @container {
@@ -47,6 +48,7 @@ class File extends Container, Impl::File {
exists(AstNode node, Location loc |
not node instanceof Comment and
not node instanceof SourceFile and
not getImmediateParent(node) instanceof SourceFile and // ignore top-level elements for now as we're getting their locations wrong when a comment is attached
loc = node.getLocation()
|
node.getFile() = this and

View File

@@ -1 +1 @@
| 49 |
| 46 |

View File

@@ -1 +1 @@
| 49 |
| 46 |

View File

@@ -1,6 +1,6 @@
| my_struct.rs:0:0:0:0 | my_struct.rs | 21 |
| main.rs:0:0:0:0 | main.rs | 8 |
| my_macro.rs:0:0:0:0 | my_macro.rs | 8 |
| my_struct.rs:0:0:0:0 | my_struct.rs | 20 |
| main.rs:0:0:0:0 | main.rs | 7 |
| my_macro.rs:0:0:0:0 | my_macro.rs | 7 |
| lib.rs:0:0:0:0 | lib.rs | 6 |
| does_not_compile.rs:0:0:0:0 | does_not_compile.rs | 3 |
| error.rs:0:0:0:0 | error.rs | 3 |

View File

@@ -1,5 +1,5 @@
| Elements extracted | 216 |
| Elements unextracted | 0 |
| Files extracted | 6 |
| Lines of code extracted | 49 |
| Lines of user code extracted | 49 |
| Lines of code extracted | 46 |
| Lines of user code extracted | 46 |