Cleanup; Cleared warnings in the logic core
authorFabian Stemmler <stemmler@in.tum.de>
Sun, 2 Jun 2019 10:01:56 +0000 (12:01 +0200)
committerFabian Stemmler <stemmler@in.tum.de>
Sun, 2 Jun 2019 10:02:32 +0000 (12:02 +0200)
net.mograsim.logic.core/src/net/mograsim/logic/core/LogicObservable.java
net.mograsim.logic.core/src/net/mograsim/logic/core/components/Mux.java
net.mograsim.logic.core/src/net/mograsim/logic/core/tests/ComponentTest.java
net.mograsim.logic.core/src/net/mograsim/logic/core/tests/GUITest.java
net.mograsim.logic.core/src/net/mograsim/logic/core/timeline/Timeline.java
net.mograsim.logic.core/src/net/mograsim/logic/core/types/BitVectorFormatter.java
net.mograsim.logic.core/src/net/mograsim/logic/core/wires/Wire.java

index bab49d2..3a51c27 100644 (file)
@@ -4,7 +4,8 @@ public interface LogicObservable
 {
        public void registerObserver(LogicObserver ob);
 
+       public void deregisterObserver(LogicObserver ob);
+
        public void notifyObservers();
 
-//     public InnerState getInnerState();
 }
index 5e75f96..47fe164 100644 (file)
@@ -82,7 +82,7 @@ public class Mux extends BasicComponent
        @Override
        public List<ReadEnd> getAllInputs()
        {
-               ArrayList<ReadEnd> wires = new ArrayList<ReadEnd>(Arrays.asList(inputs));
+               ArrayList<ReadEnd> wires = new ArrayList<>(Arrays.asList(inputs));
                wires.add(select);
                return Collections.unmodifiableList(wires);
        }
index 5fb7d9c..b015d21 100644 (file)
@@ -1,6 +1,5 @@
 package net.mograsim.logic.core.tests;
 
-import static org.junit.Assert.assertTrue;
 import static org.junit.jupiter.api.Assertions.assertArrayEquals;
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.fail;
@@ -26,6 +25,7 @@ import net.mograsim.logic.core.wires.Wire;
 import net.mograsim.logic.core.wires.Wire.ReadEnd;
 import net.mograsim.logic.core.wires.Wire.ReadWriteEnd;
 
+@SuppressWarnings("unused")
 class ComponentTest
 {
        private Timeline t = new Timeline(11);
index 7d06621..544b064 100644 (file)
@@ -114,7 +114,7 @@ public class GUITest extends JPanel
        public Timeline getTimeline()
        {
                return t;
-       };
+       }
 
        @Override
        public void paint(Graphics some_g)
@@ -177,6 +177,7 @@ public class GUITest extends JPanel
                g.setFont(g.getFont().deriveFont(Math.min(height, width) / 40f));
        }
 
+       @SuppressWarnings("static-method")
        private void drawString(Graphics g, String s, int x, int y, double anchorX, double anchorY)
        {
                int h = g.getFontMetrics().getAscent();
index fb639be..2dd5f97 100644 (file)
@@ -23,7 +23,7 @@ public class Timeline
 
        public Timeline(int initCapacity)
        {
-               events = new PriorityQueue<InnerEvent>(initCapacity);
+               events = new PriorityQueue<>(initCapacity);
 
                eventAddedListener = new ArrayList<>();
                time = () -> lastTimeUpdated;
index a798531..2ea2ca4 100644 (file)
@@ -14,8 +14,7 @@ public class BitVectorFormatter
        {
                if (bitVector == null)
                        return "null";
-               else
-                       return bitVector.toString();
+               return bitVector.toString();
        }
 
        public static ColorDefinition formatAsColor(ReadEnd end)
@@ -28,22 +27,21 @@ public class BitVectorFormatter
                // TODO maybe find a color assignment for multiple-bit bit vectors?
                if (bitVector == null || bitVector.length() != 1)
                        return new ColorDefinition(BuiltInColor.COLOR_BLACK);
-               else
-                       switch (bitVector.getBit(0))
-                       {
-                       case ONE:
-                               return new ColorDefinition(BuiltInColor.COLOR_GREEN);
-                       case U:
-                               return new ColorDefinition(BuiltInColor.COLOR_CYAN);
-                       case X:
-                               return new ColorDefinition(BuiltInColor.COLOR_RED);
-                       case Z:
-                               return new ColorDefinition(BuiltInColor.COLOR_YELLOW);
-                       case ZERO:
-                               return new ColorDefinition(BuiltInColor.COLOR_GRAY);
-                       default:
-                               throw new IllegalArgumentException("Unknown enum constant: " + bitVector.getBit(0));
-                       }
+               switch (bitVector.getBit(0))
+               {
+               case ONE:
+                       return new ColorDefinition(BuiltInColor.COLOR_GREEN);
+               case U:
+                       return new ColorDefinition(BuiltInColor.COLOR_CYAN);
+               case X:
+                       return new ColorDefinition(BuiltInColor.COLOR_RED);
+               case Z:
+                       return new ColorDefinition(BuiltInColor.COLOR_YELLOW);
+               case ZERO:
+                       return new ColorDefinition(BuiltInColor.COLOR_GRAY);
+               default:
+                       throw new IllegalArgumentException("Unknown enum constant: " + bitVector.getBit(0));
+               }
        }
 
        private BitVectorFormatter()
index 12f0f8a..35addff 100644 (file)
@@ -23,10 +23,10 @@ public class Wire
 {
        private BitVector values;
        public final int travelTime;
-       private List<ReadEnd> attached = new ArrayList<ReadEnd>();
+       private List<ReadEnd> attached = new ArrayList<>();
        public final int length;
-       private List<ReadWriteEnd> inputs = new ArrayList<ReadWriteEnd>();
-       private Timeline timeline;
+       List<ReadWriteEnd> inputs = new ArrayList<>();
+       Timeline timeline;
 
        public Wire(Timeline timeline, int length, int travelTime)
        {
@@ -61,12 +61,12 @@ public class Wire
        {
                if (values.equals(newValues))
                        return;
-               BitVector oldValues = values;
+//             BitVector oldValues = values;
                values = newValues;
-               notifyObservers(oldValues);
+               notifyObservers();
        }
 
-       private void recalculate()
+       void recalculate()
        {
                switch (inputs.size())
                {
@@ -174,20 +174,20 @@ public class Wire
         * 
         * @author Fabian Stemmler
         */
-       private void attachEnd(ReadEnd end)
+       void attachEnd(ReadEnd end)
        {
                attached.add(end);
        }
 
-       private void detachEnd(ReadEnd end)
+       void detachEnd(ReadEnd end)
        {
                attached.remove(end);
        }
 
-       private void notifyObservers(BitVector oldValues)
+       private void notifyObservers()
        {
                for (ReadEnd o : attached)
-                       o.update(oldValues);
+                       o.update();
        }
 
        /**
@@ -206,7 +206,7 @@ public class Wire
                return new ReadEnd();
        }
 
-       private void registerInput(ReadWriteEnd toRegister)
+       void registerInput(ReadWriteEnd toRegister)
        {
                inputs.add(toRegister);
        }
@@ -220,15 +220,15 @@ public class Wire
         */
        public class ReadEnd implements LogicObservable
        {
-               private List<LogicObserver> observers = new ArrayList<LogicObserver>();
+               private List<LogicObserver> observers = new ArrayList<>();
 
-               private ReadEnd()
+               ReadEnd()
                {
                        super();
                        Wire.this.attachEnd(this);
                }
 
-               public void update(BitVector oldValues)
+               public void update()
                {
                        notifyObservers();
                }
@@ -345,6 +345,12 @@ public class Wire
                        observers.add(ob);
                }
 
+               @Override
+               public void deregisterObserver(LogicObserver ob)
+               {
+                       observers.remove(ob);
+               }
+
                @Override
                public void notifyObservers()
                {
@@ -358,7 +364,7 @@ public class Wire
                private boolean open;
                private BitVector inputValues;
 
-               private ReadWriteEnd()
+               ReadWriteEnd()
                {
                        super();
                        open = true;