Skip to content

Commit cb264da

Browse files
committed
unified: Add NameBinding.qll
Now that StaticNameBinding also has a module called 'Public' we get conflicts when importing both. Adding a facade for importing both.
1 parent 92df6d2 commit cb264da

3 files changed

Lines changed: 17 additions & 5 deletions

File tree

‎unified/ql/lib/codeql/unified/internal/AnalysisQuality.qll‎

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
private import unified
22
private import codeql.util.ReportStats
3-
private import codeql.unified.internal.StaticNameBinding
4-
private import codeql.unified.internal.LocalNameBinding
5-
private import codeql.unified.internal.NameBindingPlugin
3+
private import codeql.unified.internal.NameBinding
64

75
/** Stats about name nodes that static name binding could resolve. */
86
module StaticNameResolutionStats implements EntityStatsSig {
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
/**
2+
* Re-exports everything from the name-binding passes, while avoiding conflicts on 'Public'.
3+
*
4+
* TODO: move name binding passes into a subfolder.
5+
*/
6+
7+
import StaticNameBinding
8+
import LocalNameBinding
9+
import NameBindingPlugin
10+
11+
module Public {
12+
// re-declare here to avoid conflicting import
13+
import StaticNameBinding::Public
14+
import LocalNameBinding::Public
15+
}

‎unified/ql/lib/unified.qll‎

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,4 @@ import codeql.files.FileSystem
77
import codeql.unified.internal.Ast::UnifiedFinal
88
import codeql.unified.internal.AstExtra::Public
99
import codeql.unified.internal.ControlFlowGraph
10-
import codeql.unified.internal.LocalNameBinding::Public
11-
import codeql.unified.internal.StaticNameBinding::Public
10+
import codeql.unified.internal.NameBinding::Public

0 commit comments

Comments
 (0)