summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chapter02/src/main/java/com/seaofnodes/simple/node/Node.java2
-rw-r--r--chapter03/src/main/java/com/seaofnodes/simple/node/Node.java2
-rw-r--r--chapter04/src/main/java/com/seaofnodes/simple/node/Node.java4
-rw-r--r--chapter05/src/main/java/com/seaofnodes/simple/node/Node.java4
-rw-r--r--chapter06/src/main/java/com/seaofnodes/simple/node/Node.java4
-rw-r--r--chapter07/src/main/java/com/seaofnodes/simple/node/Node.java4
-rw-r--r--chapter08/src/main/java/com/seaofnodes/simple/node/Node.java4
-rw-r--r--chapter09/src/main/java/com/seaofnodes/simple/node/Node.java4
-rw-r--r--chapter10/src/main/java/com/seaofnodes/simple/node/Node.java9
-rw-r--r--chapter11/src/main/java/com/seaofnodes/simple/node/Node.java9
-rw-r--r--chapter12/src/main/java/com/seaofnodes/simple/node/Node.java9
-rw-r--r--chapter13/src/main/java/com/seaofnodes/simple/node/Node.java9
-rw-r--r--chapter14/src/main/java/com/seaofnodes/simple/node/Node.java9
-rw-r--r--chapter15/src/main/java/com/seaofnodes/simple/node/Node.java9
-rw-r--r--chapter16/src/main/java/com/seaofnodes/simple/node/Node.java9
-rw-r--r--chapter17/src/main/java/com/seaofnodes/simple/node/Node.java9
-rw-r--r--chapter18/src/main/java/com/seaofnodes/simple/node/Node.java9
-rw-r--r--chapter19/src/main/java/com/seaofnodes/simple/node/Node.java9
-rw-r--r--chapter20/src/main/java/com/seaofnodes/simple/node/Node.java9
-rw-r--r--chapter21/src/main/java/com/seaofnodes/simple/node/Node.java11
-rw-r--r--chapter22/src/main/java/com/seaofnodes/simple/node/Node.java11
-rw-r--r--chapter23/src/main/java/com/seaofnodes/simple/node/Node.java11
-rw-r--r--chapter24/src/main/java/com/seaofnodes/simple/node/Node.java11
23 files changed, 63 insertions, 108 deletions
diff --git a/chapter02/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter02/src/main/java/com/seaofnodes/simple/node/Node.java
index 6f47f9eb..fd233108 100644
--- a/chapter02/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter02/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -153,7 +153,7 @@ public abstract class Node {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
diff --git a/chapter03/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter03/src/main/java/com/seaofnodes/simple/node/Node.java
index 82357f9b..6e4617ff 100644
--- a/chapter03/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter03/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -177,7 +177,7 @@ public abstract class Node {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
diff --git a/chapter04/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter04/src/main/java/com/seaofnodes/simple/node/Node.java
index 9fa0a95a..2c0e3832 100644
--- a/chapter04/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter04/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -168,7 +168,7 @@ public abstract class Node {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -206,7 +206,7 @@ public abstract class Node {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// ------------------------------------------------------------------------
diff --git a/chapter05/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter05/src/main/java/com/seaofnodes/simple/node/Node.java
index 5412108b..8681ac5a 100644
--- a/chapter05/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter05/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -168,7 +168,7 @@ public abstract class Node {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -206,7 +206,7 @@ public abstract class Node {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// ------------------------------------------------------------------------
diff --git a/chapter06/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter06/src/main/java/com/seaofnodes/simple/node/Node.java
index 97ba68ab..39e8ff8d 100644
--- a/chapter06/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter06/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -189,7 +189,7 @@ public abstract class Node {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -227,7 +227,7 @@ public abstract class Node {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// ------------------------------------------------------------------------
diff --git a/chapter07/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter07/src/main/java/com/seaofnodes/simple/node/Node.java
index 35b07781..dade7525 100644
--- a/chapter07/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter07/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -222,7 +222,7 @@ public abstract class Node {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -260,7 +260,7 @@ public abstract class Node {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
public <N extends Node> N unkeep() { delUse(null); return (N)this; }
diff --git a/chapter08/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter08/src/main/java/com/seaofnodes/simple/node/Node.java
index 2d6d5ad5..ce847453 100644
--- a/chapter08/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter08/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -224,7 +224,7 @@ public abstract class Node {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -262,7 +262,7 @@ public abstract class Node {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
public <N extends Node> N unkeep() { delUse(null); return (N)this; }
diff --git a/chapter09/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter09/src/main/java/com/seaofnodes/simple/node/Node.java
index 5eb9c076..2f477ec4 100644
--- a/chapter09/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter09/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -234,7 +234,7 @@ public abstract class Node {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -281,7 +281,7 @@ public abstract class Node {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
public <N extends Node> N unkeep() { delUse(null); return (N)this; }
diff --git a/chapter10/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter10/src/main/java/com/seaofnodes/simple/node/Node.java
index bb698860..c4889231 100644
--- a/chapter10/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter10/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -207,7 +207,7 @@ public abstract class Node {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -254,12 +254,9 @@ public abstract class Node {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
- public <N extends Node> N unkeep() {
- delUse(null);
- return (N)this;
- }
+ public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// Test "keep" status
public boolean iskeep() { return Utils.find(_outputs,null) != -1; }
diff --git a/chapter11/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter11/src/main/java/com/seaofnodes/simple/node/Node.java
index fc49ad6a..e095fbfc 100644
--- a/chapter11/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter11/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -207,7 +207,7 @@ public abstract class Node implements OutNode {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -254,12 +254,9 @@ public abstract class Node implements OutNode {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
- public <N extends Node> N unkeep() {
- delUse(null);
- return (N)this;
- }
+ public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// Test "keep" status
public boolean iskeep() { return Utils.find(_outputs,null) != -1; }
diff --git a/chapter12/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter12/src/main/java/com/seaofnodes/simple/node/Node.java
index 52282737..3e77f1db 100644
--- a/chapter12/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter12/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -207,7 +207,7 @@ public abstract class Node implements OutNode {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -255,12 +255,9 @@ public abstract class Node implements OutNode {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
- public <N extends Node> N unkeep() {
- delUse(null);
- return (N)this;
- }
+ public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// Test "keep" status
public boolean iskeep() { return Utils.find(_outputs,null) != -1; }
diff --git a/chapter13/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter13/src/main/java/com/seaofnodes/simple/node/Node.java
index d846fcef..766349ce 100644
--- a/chapter13/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter13/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -207,7 +207,7 @@ public abstract class Node implements OutNode {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -255,12 +255,9 @@ public abstract class Node implements OutNode {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
- public <N extends Node> N unkeep() {
- delUse(null);
- return (N)this;
- }
+ public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// Test "keep" status
public boolean iskeep() { return Utils.find(_outputs,null) != -1; }
diff --git a/chapter14/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter14/src/main/java/com/seaofnodes/simple/node/Node.java
index 96b569b5..2ef37518 100644
--- a/chapter14/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter14/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -205,7 +205,7 @@ public abstract class Node implements OutNode {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -253,12 +253,9 @@ public abstract class Node implements OutNode {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
- public <N extends Node> N unkeep() {
- delUse(null);
- return (N)this;
- }
+ public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// Test "keep" status
public boolean iskeep() { return Utils.find(_outputs,null) != -1; }
diff --git a/chapter15/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter15/src/main/java/com/seaofnodes/simple/node/Node.java
index 461f153d..7c22a50e 100644
--- a/chapter15/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter15/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -204,7 +204,7 @@ public abstract class Node implements OutNode {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -252,12 +252,9 @@ public abstract class Node implements OutNode {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
- public <N extends Node> N unkeep() {
- delUse(null);
- return (N)this;
- }
+ public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// Test "keep" status
public boolean iskeep() { return Utils.find(_outputs,null) != -1; }
diff --git a/chapter16/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter16/src/main/java/com/seaofnodes/simple/node/Node.java
index 462a403c..e1e6283a 100644
--- a/chapter16/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter16/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -211,7 +211,7 @@ public abstract class Node implements OutNode {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -259,12 +259,9 @@ public abstract class Node implements OutNode {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
- public <N extends Node> N unkeep() {
- delUse(null);
- return (N)this;
- }
+ public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// Test "keep" status
public boolean iskeep() { return _outputs.find(null) != -1; }
diff --git a/chapter17/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter17/src/main/java/com/seaofnodes/simple/node/Node.java
index 3827fdac..09180899 100644
--- a/chapter17/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter17/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -211,7 +211,7 @@ public abstract class Node implements OutNode {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -259,12 +259,9 @@ public abstract class Node implements OutNode {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
- public <N extends Node> N unkeep() {
- delUse(null);
- return (N)this;
- }
+ public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// Test "keep" status
public boolean iskeep() { return _outputs.find(null) != -1; }
public void unkill() {
diff --git a/chapter18/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter18/src/main/java/com/seaofnodes/simple/node/Node.java
index 4c6cce16..c9369742 100644
--- a/chapter18/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter18/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -212,7 +212,7 @@ public abstract class Node {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -260,12 +260,9 @@ public abstract class Node {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
- public <N extends Node> N unkeep() {
- delUse(null);
- return (N)this;
- }
+ public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// Test "keep" status
public boolean iskeep() { return _outputs.find(null) != -1; }
public void unkill() {
diff --git a/chapter19/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter19/src/main/java/com/seaofnodes/simple/node/Node.java
index bbf1ebe9..5d099785 100644
--- a/chapter19/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter19/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -221,7 +221,7 @@ public abstract class Node {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -267,12 +267,9 @@ public abstract class Node {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
- public <N extends Node> N unkeep() {
- delUse(null);
- return (N)this;
- }
+ public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// Test "keep" status
public boolean iskeep() { return _outputs.find(null) != -1; }
public void unkill() {
diff --git a/chapter20/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter20/src/main/java/com/seaofnodes/simple/node/Node.java
index b3d6c94e..e8043854 100644
--- a/chapter20/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter20/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -226,7 +226,7 @@ public abstract class Node {
}
// Breaks the edge invariants, used temporarily
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -272,12 +272,9 @@ public abstract class Node {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
- public <N extends Node> N unkeep() {
- delUse(null);
- return (N)this;
- }
+ public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// Test "keep" status
public boolean iskeep() { return _outputs.find(null) != -1; }
public void unkill() {
diff --git a/chapter21/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter21/src/main/java/com/seaofnodes/simple/node/Node.java
index c0c2e606..4ca95cae 100644
--- a/chapter21/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter21/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -226,8 +226,7 @@ public abstract class Node implements Cloneable {
}
// Breaks the edge invariants, used temporarily
- @SuppressWarnings("unchecked")
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -282,13 +281,11 @@ public abstract class Node implements Cloneable {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ @SuppressWarnings("unchecked")
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
@SuppressWarnings("unchecked")
- public <N extends Node> N unkeep() {
- delUse(null);
- return (N)this;
- }
+ public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// Test "keep" status
public boolean iskeep() { return _outputs.find(null) != -1; }
public void unkill() {
diff --git a/chapter22/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter22/src/main/java/com/seaofnodes/simple/node/Node.java
index eadb984a..064f295f 100644
--- a/chapter22/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter22/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -226,8 +226,7 @@ public abstract class Node implements Cloneable {
}
// Breaks the edge invariants, used temporarily
- @SuppressWarnings("unchecked")
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -282,13 +281,11 @@ public abstract class Node implements Cloneable {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ @SuppressWarnings("unchecked")
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
@SuppressWarnings("unchecked")
- public <N extends Node> N unkeep() {
- delUse(null);
- return (N)this;
- }
+ public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// Test "keep" status
public boolean iskeep() { return _outputs.find(null) != -1; }
public void unkill() {
diff --git a/chapter23/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter23/src/main/java/com/seaofnodes/simple/node/Node.java
index 5e5be196..8981ab0d 100644
--- a/chapter23/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter23/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -228,8 +228,7 @@ public abstract class Node implements Cloneable {
}
// Breaks the edge invariants, used temporarily
- @SuppressWarnings("unchecked")
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -284,13 +283,11 @@ public abstract class Node implements Cloneable {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ @SuppressWarnings("unchecked")
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
@SuppressWarnings("unchecked")
- public <N extends Node> N unkeep() {
- delUse(null);
- return (N)this;
- }
+ public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// Test "keep" status
public boolean iskeep() { return _outputs.find(null) != -1; }
public void unkill() {
diff --git a/chapter24/src/main/java/com/seaofnodes/simple/node/Node.java b/chapter24/src/main/java/com/seaofnodes/simple/node/Node.java
index 1979dcd1..458a3407 100644
--- a/chapter24/src/main/java/com/seaofnodes/simple/node/Node.java
+++ b/chapter24/src/main/java/com/seaofnodes/simple/node/Node.java
@@ -229,8 +229,7 @@ public abstract class Node implements Cloneable {
}
// Breaks the edge invariants, used temporarily
- @SuppressWarnings("unchecked")
- protected <N extends Node> N addUse(Node n) { _outputs.add(n); return (N)this; }
+ protected <N extends Node> void addUse(N n) { _outputs.add(n); }
// Remove node 'use' from 'def's (i.e. our) output list, by compressing the list in-place.
// Return true if the output list is empty afterward.
@@ -285,13 +284,11 @@ public abstract class Node implements Cloneable {
// Shortcuts to stop DCE mid-parse
// Add bogus null use to keep node alive
- public <N extends Node> N keep() { return addUse(null); }
+ @SuppressWarnings("unchecked")
+ public <N extends Node> N keep() { addUse(null); return (N)this; }
// Remove bogus null.
@SuppressWarnings("unchecked")
- public <N extends Node> N unkeep() {
- delUse(null);
- return (N)this;
- }
+ public <N extends Node> N unkeep() { delUse(null); return (N)this; }
// Test "keep" status
public boolean iskeep() { return _outputs.find(null) != -1; }
public void unkill() {