Python: move things around

This commit is contained in:
Rasmus Lerchedahl Petersen
2023-12-15 13:48:50 +01:00
parent 739b839628
commit f668453d01

View File

@@ -388,7 +388,10 @@ module LocalFlow {
module VariableCapture { module VariableCapture {
private import codeql.dataflow.VariableCapture as Shared private import codeql.dataflow.VariableCapture as Shared
class ExprCfgNode extends ControlFlowNode { private module CaptureInput implements Shared::InputSig<Location> {
private import python as PY
additional class ExprCfgNode extends ControlFlowNode {
ExprCfgNode() { isExpressionNode(this) } ExprCfgNode() { isExpressionNode(this) }
} }
@@ -402,8 +405,9 @@ module VariableCapture {
) )
} }
private module CaptureInput implements Shared::InputSig<Location> { class Callable extends Scope {
private import python as PY predicate isConstructor() { none() }
}
class BasicBlock extends PY::BasicBlock { class BasicBlock extends PY::BasicBlock {
Callable getEnclosingCallable() { result = this.getScope() } Callable getEnclosingCallable() { result = this.getScope() }
@@ -482,10 +486,6 @@ module VariableCapture {
predicate hasAliasedAccess(Expr f) { closureFlowStep+(this, f) and not closureFlowStep(f, _) } predicate hasAliasedAccess(Expr f) { closureFlowStep+(this, f) and not closureFlowStep(f, _) }
} }
class Callable extends Scope {
predicate isConstructor() { none() }
}
} }
class CapturedVariable = CaptureInput::CapturedVariable; class CapturedVariable = CaptureInput::CapturedVariable;