diff --git a/core/src/main/java/io/parsingdata/metal/Trampoline.java b/core/src/main/java/io/parsingdata/metal/Trampoline.java index 7f22daa2..0235a069 100644 --- a/core/src/main/java/io/parsingdata/metal/Trampoline.java +++ b/core/src/main/java/io/parsingdata/metal/Trampoline.java @@ -44,10 +44,12 @@ static Trampoline complete(final CompletedTrampoline completedTrampoli @FunctionalInterface interface CompletedTrampoline extends Trampoline { + @Override default boolean hasNext() { return false; } + @Override default Trampoline next() { throw new UnsupportedOperationException("A CompletedTrampoline does not have a next computation."); } @@ -61,10 +63,12 @@ static Trampoline intermediate(final IntermediateTrampoline intermedia @FunctionalInterface interface IntermediateTrampoline extends Trampoline { + @Override default T result() { throw new UnsupportedOperationException("An IntermediateTrampoline does not have a result."); } + @Override default boolean hasNext() { return true; } diff --git a/core/src/main/java/io/parsingdata/metal/data/ParseGraph.java b/core/src/main/java/io/parsingdata/metal/data/ParseGraph.java index 03918a15..e27a63ae 100644 --- a/core/src/main/java/io/parsingdata/metal/data/ParseGraph.java +++ b/core/src/main/java/io/parsingdata/metal/data/ParseGraph.java @@ -117,9 +117,9 @@ private Trampoline> current(final ImmutableList return intermediate(() -> current(items.tail)); } - public boolean isGraph() { return true; } - public ParseGraph asGraph() { return this; } - public Token getDefinition() { return definition; } + @Override public boolean isGraph() { return true; } + @Override public ParseGraph asGraph() { return this; } + @Override public Token getDefinition() { return definition; } @Override public String toString() { diff --git a/core/src/main/java/io/parsingdata/metal/data/ParseReference.java b/core/src/main/java/io/parsingdata/metal/data/ParseReference.java index 1becd77a..d6207dbf 100644 --- a/core/src/main/java/io/parsingdata/metal/data/ParseReference.java +++ b/core/src/main/java/io/parsingdata/metal/data/ParseReference.java @@ -43,9 +43,9 @@ public Optional resolve(final ParseGraph root) { return findItemAtOffset(getAllRoots(root, definition), location, source).computeResult(); } - public boolean isReference() { return true; } - public ParseReference asReference() { return this; } - public Token getDefinition() { return definition; } + @Override public boolean isReference() { return true; } + @Override public ParseReference asReference() { return this; } + @Override public Token getDefinition() { return definition; } @Override public String toString() { diff --git a/core/src/main/java/io/parsingdata/metal/data/ParseValue.java b/core/src/main/java/io/parsingdata/metal/data/ParseValue.java index e2fb8ef5..0f2ea7a6 100644 --- a/core/src/main/java/io/parsingdata/metal/data/ParseValue.java +++ b/core/src/main/java/io/parsingdata/metal/data/ParseValue.java @@ -40,9 +40,9 @@ public boolean matches(final String name) { return this.name.equals(name) || this.name.endsWith(Token.SEPARATOR + name); } - public boolean isValue() { return true; } - public ParseValue asValue() { return this; } - public Token getDefinition() { return definition; } + @Override public boolean isValue() { return true; } + @Override public ParseValue asValue() { return this; } + @Override public Token getDefinition() { return definition; } @Override public String toString() { diff --git a/core/src/main/java/io/parsingdata/metal/encoding/ByteOrder.java b/core/src/main/java/io/parsingdata/metal/encoding/ByteOrder.java index 8830c015..7f12f65e 100644 --- a/core/src/main/java/io/parsingdata/metal/encoding/ByteOrder.java +++ b/core/src/main/java/io/parsingdata/metal/encoding/ByteOrder.java @@ -18,10 +18,10 @@ public enum ByteOrder { - BIG_ENDIAN { public byte[] apply(final byte[] bytes) { + BIG_ENDIAN { @Override public byte[] apply(final byte[] bytes) { return bytes.clone(); } }, - LITTLE_ENDIAN { public byte[] apply(final byte[] bytes) { + LITTLE_ENDIAN { @Override public byte[] apply(final byte[] bytes) { final byte[] output = bytes.clone(); for (int i = 0; i < bytes.length; i++) { output[i] = bytes[(bytes.length-1)-i];