55 * `ControlFlowNode` at which it is defined. Each SSA variable is defined
66 * either by a phi node, an implicit initial value (for parameters and fields),
77 * an explicit update, or an implicit update (for fields).
8- * An implicit update occurs either at a `Call` that might modify a field, at
9- * another update that can update the qualifier of a field, or at a `FieldRead`
10- * of the field in case the field is not amenable to a non-trivial SSA
11- * representation.
8+ * An implicit update occurs either at a `Call` that might modify a field, or
9+ * at another update that can update the qualifier of a field.
1210 */
1311overlay [ local?]
1412module ;
@@ -168,13 +166,19 @@ class SsaCapturedDefinition extends SsaImplicitEntryDefinition {
168166VarRead ssaGetAFirstUse ( SsaDefinition def ) { firstUse ( def , result ) }
169167
170168/**
169+ * DEPRECATED: use `SsaDefinition` instead.
170+ *
171171 * An SSA variable.
172172 */
173173class SsaVariable extends Definition {
174174 /** Gets the SSA source variable underlying this SSA variable. */
175175 SsaSourceVariable getSourceVariable ( ) { result = super .getSourceVariable ( ) }
176176
177- /** Gets the `ControlFlowNode` at which this SSA variable is defined. */
177+ /**
178+ * DEPRECATED: Use `getControlFlowNode()` instead.
179+ *
180+ * Gets the `ControlFlowNode` at which this SSA variable is defined.
181+ */
178182 pragma [ nomagic]
179183 ControlFlowNode getCfgNode ( ) {
180184 exists ( BasicBlock bb , int i |
@@ -193,7 +197,11 @@ class SsaVariable extends Definition {
193197 /** Gets the `BasicBlock` in which this SSA variable is defined. */
194198 BasicBlock getBasicBlock ( ) { result = super .getBasicBlock ( ) }
195199
196- /** Gets an access of this SSA variable. */
200+ /**
201+ * DEPRECATED: Use `getARead()` instead.
202+ *
203+ * Gets an access of this SSA variable.
204+ */
197205 VarRead getAUse ( ) { result = getAUse ( this ) }
198206
199207 /**
@@ -236,7 +244,11 @@ class SsaVariable extends Definition {
236244 }
237245}
238246
239- /** An SSA variable that either explicitly or implicitly updates the variable. */
247+ /**
248+ * DEPRECATED: use `SsaWriteDefinition` instead.
249+ *
250+ * An SSA variable that either explicitly or implicitly updates the variable.
251+ */
240252class SsaUpdate extends SsaVariable instanceof WriteDefinition {
241253 SsaUpdate ( ) { not this instanceof SsaImplicitInit }
242254}
0 commit comments