@@ -368,30 +368,6 @@ module DataFlow {
368368 override ASTNode getAstNode ( ) { result = rest }
369369 }
370370
371- /**
372- * A node in the data flow graph which corresponds to the value destructured by an
373- * object or array pattern.
374- */
375- private class DestructuringPatternNode extends Node , TDestructuringPatternNode {
376- DestructuringPattern pattern ;
377-
378- DestructuringPatternNode ( ) { this = TDestructuringPatternNode ( pattern ) }
379-
380- override BasicBlock getBasicBlock ( ) { result = pattern .getBasicBlock ( ) }
381-
382- override predicate hasLocationInfo (
383- string filepath , int startline , int startcolumn , int endline , int endcolumn
384- ) {
385- pattern .getLocation ( ) .hasLocationInfo ( filepath , startline , startcolumn , endline , endcolumn )
386- }
387-
388- override string toString ( ) { result = pattern .toString ( ) }
389-
390- override File getFile ( ) { result = pattern .getFile ( ) }
391-
392- override ASTNode getAstNode ( ) { result = pattern }
393- }
394-
395371 /**
396372 * A node in the data flow graph which corresponds to an element pattern of an
397373 * array pattern.
@@ -828,7 +804,7 @@ module DataFlow {
828804 /** Gets the value pattern of this property pattern. */
829805 Expr getValuePattern ( ) { result = prop .getValuePattern ( ) }
830806
831- override Node getBase ( ) { result = TDestructuringPatternNode ( prop .getObjectPattern ( ) ) }
807+ override Node getBase ( ) { result = TValueNode ( prop .getObjectPattern ( ) ) }
832808
833809 override Expr getPropertyNameExpr ( ) { result = prop .getNameExpr ( ) }
834810
@@ -841,7 +817,7 @@ module DataFlow {
841817 * for `[ ...elts ] = arr`.
842818 */
843819 private class RestPatternAsPropRead extends PropRead , RestPatternNode {
844- override Node getBase ( ) { result = TDestructuringPatternNode ( pattern ) }
820+ override Node getBase ( ) { result = TValueNode ( pattern ) }
845821
846822 override Expr getPropertyNameExpr ( ) { none ( ) }
847823
@@ -854,7 +830,7 @@ module DataFlow {
854830 * for `y`.
855831 */
856832 private class ElementPatternAsPropRead extends PropRead , ElementPatternNode {
857- override Node getBase ( ) { result = TDestructuringPatternNode ( pattern ) }
833+ override Node getBase ( ) { result = TValueNode ( pattern ) }
858834
859835 override Expr getPropertyNameExpr ( ) { none ( ) }
860836
@@ -1332,7 +1308,7 @@ module DataFlow {
13321308 result = TSsaDefNode ( ssa )
13331309 )
13341310 or
1335- result = TDestructuringPatternNode ( lvalue )
1311+ result = TValueNode ( lvalue . ( DestructuringPattern ) )
13361312 or
13371313 result = TUnusedParameterNode ( lvalue )
13381314 }
0 commit comments