@@ -315,21 +315,27 @@ class Node extends TDataFlowNode {
315315
316316 /** Gets the basic block associated with this data flow node, if any. */
317317 BasicBlock getBasicBlock ( ) { this .hasControlFlowPosition ( result , _) }
318- }
319318
320- Node getPostUpdateNode ( Node pre ) {
321- exists ( Expr expr |
322- pre .isResultValue ( expr ) and
323- result .isPostUpdate ( expr )
324- )
325- or
326- exists ( Expr expr , LocalVariable var |
327- pre .isLocalVariableRead ( expr , var ) and
328- result .isLocalVariablePostUpdate ( expr , var )
329- )
330- or
331- exists ( DataFlowCall call |
332- pre .isReceiverArgumentEx ( call ) and
333- result .isReceiverPostUpdateEx ( call )
334- )
319+ /**
320+ * Gets the post-update node for this node, if any.
321+ *
322+ * The post-update node represents the updated state of the value held in this node, after it has been mutated by the surrounding assignment or call.
323+ */
324+ pragma [ nomagic]
325+ Node getPostUpdateNode ( ) {
326+ exists ( Expr expr |
327+ this .isResultValue ( expr ) and
328+ result .isPostUpdate ( expr )
329+ )
330+ or
331+ exists ( Expr expr , LocalVariable var |
332+ this .isLocalVariableRead ( expr , var ) and
333+ result .isLocalVariablePostUpdate ( expr , var )
334+ )
335+ or
336+ exists ( DataFlowCall call |
337+ this .isReceiverArgumentEx ( call ) and
338+ result .isReceiverPostUpdateEx ( call )
339+ )
340+ }
335341}
0 commit comments