File tree Expand file tree Collapse file tree 2 files changed +23
-0
lines changed
powershell/ql/lib/semmle/code/powershell Expand file tree Collapse file tree 2 files changed +23
-0
lines changed Original file line number Diff line number Diff line change @@ -1061,6 +1061,20 @@ module ExprNodes {
1061
1061
1062
1062
ExprCfgNode getAnOperand ( ) { e .hasCfgChild ( e .getAnOperand ( ) , this , result ) }
1063
1063
}
1064
+
1065
+ private class AutomaticVariableChildMapping extends ExprChildMapping , AutomaticVariable {
1066
+ override predicate relevantChild ( Ast child ) { none ( ) }
1067
+ }
1068
+
1069
+ class AutomaticVariableCfgNode extends ExprCfgNode {
1070
+ override string getAPrimaryQlClass ( ) { result = "AutomaticVariableCfgNode" }
1071
+
1072
+ override AutomaticVariableChildMapping e ;
1073
+
1074
+ override AutomaticVariable getExpr ( ) { result = e }
1075
+
1076
+ string getName ( ) { result = e .getName ( ) }
1077
+ }
1064
1078
}
1065
1079
1066
1080
module StmtNodes {
Original file line number Diff line number Diff line change @@ -555,3 +555,12 @@ class QualifiedTypeNameNode extends TypeNameNode {
555
555
556
556
final override CfgNodes:: ExprNodes:: QualifiedTypeNameExprCfgNode getExprNode ( ) { result = n }
557
557
}
558
+
559
+ /** A use of an automatic variable, viewed as a node in a data flow graph. */
560
+ class AutomaticVariableNode extends ExprNode {
561
+ override CfgNodes:: ExprNodes:: AutomaticVariableCfgNode n ;
562
+
563
+ final override CfgNodes:: ExprNodes:: AutomaticVariableCfgNode getExprNode ( ) { result = n }
564
+
565
+ string getName ( ) { result = n .getName ( ) }
566
+ }
You can’t perform that action at this time.
0 commit comments