Skip to content

Commit

Permalink
Make ExtendedNode and Label public again (#6130)
Browse files Browse the repository at this point in the history
In #5955, the `ExtendedNode` and `Label` classes from the dataflow
framework were changed from public to package-private. However, NullAway
relies on these classes being public (see
#5156,
#5152, and
uber/NullAway#608). This PR makes the classes
public again and adds an explanatory comment.
  • Loading branch information
msridhar committed Aug 14, 2023
1 parent 600920f commit 9bff963
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,12 @@
* <li><em>TWO_TARGET_CONDITIONAL_JUMP</em>: {@link ConditionalJump}. A conditional jump with two
* targets for both the 'then' and 'else' branch.
* </ul>
*
* Note that this class is deliberately public, to enable users of the dataflow library to customize
* CFG construction.
*/
@SuppressWarnings("nullness") // TODO
/*package-private*/ abstract class ExtendedNode {
abstract class ExtendedNode {

/** The basic block this extended node belongs to (as determined in phase two). */
protected BlockImpl block;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,11 @@
* A label is used to refer to other extended nodes using a mapping from labels to extended nodes.
* Labels get their names either from labeled statements in the source code or from internally
* generated unique names.
*
* <p>Note that this class is deliberately public, to enable users of the dataflow library to
* customize CFG construction.
*/
/*package-private*/ class Label {
class Label {

/** Unique id counter that incremented in {@code #uniqueName}. */
private static int uid = 0;
Expand Down

0 comments on commit 9bff963

Please sign in to comment.