diff --git a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/ValidatingResponse.java b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/ValidatingResponse.java index ae6dd0d18..1bf59327c 100644 --- a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/ValidatingResponse.java +++ b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/ValidatingResponse.java @@ -2,9 +2,8 @@ import java.util.OptionalInt; -import net.zscript.javareceiver.tokenizer.BlockIterator; -import net.zscript.javareceiver.tokenizer.ZscriptExpression; import net.zscript.model.components.Zchars; +import net.zscript.tokenizer.ZscriptExpression; public abstract class ValidatingResponse implements ZscriptResponse { protected final ZscriptExpression expression; diff --git a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/ZscriptResponse.java b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/ZscriptResponse.java index 58c85a139..4b59504ed 100644 --- a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/ZscriptResponse.java +++ b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/ZscriptResponse.java @@ -2,7 +2,6 @@ import java.util.OptionalInt; -import net.zscript.javareceiver.tokenizer.BlockIterator; import net.zscript.model.components.Zchars; import net.zscript.model.components.ZscriptStatus; diff --git a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/commandnodes/ZscriptCommandNode.java b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/commandnodes/ZscriptCommandNode.java index 611b42a95..77dd88944 100644 --- a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/commandnodes/ZscriptCommandNode.java +++ b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/commandnodes/ZscriptCommandNode.java @@ -9,7 +9,7 @@ import net.zscript.javaclient.commandPaths.ZscriptFieldSet; import net.zscript.javaclient.commandbuilder.Respondable; import net.zscript.javaclient.commandbuilder.ZscriptResponse; -import net.zscript.javareceiver.tokenizer.ZscriptExpression; +import net.zscript.tokenizer.ZscriptExpression; import net.zscript.util.ByteString; public abstract class ZscriptCommandNode extends CommandSequenceNode implements Respondable { diff --git a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/AbortCommandNode.java b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/AbortCommandNode.java index d6cccb6bd..48f1d489e 100644 --- a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/AbortCommandNode.java +++ b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/AbortCommandNode.java @@ -1,14 +1,13 @@ package net.zscript.javaclient.commandbuilder.defaultCommands; -import java.nio.charset.StandardCharsets; import java.util.Collections; import java.util.Map; import net.zscript.javaclient.commandbuilder.commandnodes.CommandSequenceNode; import net.zscript.javaclient.commandbuilder.commandnodes.ZscriptCommandNode; -import net.zscript.javareceiver.tokenizer.ZscriptExpression; import net.zscript.model.components.Zchars; import net.zscript.model.components.ZscriptStatus; +import net.zscript.tokenizer.ZscriptExpression; public class AbortCommandNode extends ZscriptCommandNode { diff --git a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/BlankCommandNode.java b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/BlankCommandNode.java index 186c1fe9e..f790e143c 100644 --- a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/BlankCommandNode.java +++ b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/BlankCommandNode.java @@ -1,10 +1,8 @@ package net.zscript.javaclient.commandbuilder.defaultCommands; import net.zscript.javaclient.commandbuilder.commandnodes.CommandSequenceNode; -import net.zscript.javaclient.commandbuilder.commandnodes.ZscriptCommandBuilder; import net.zscript.javaclient.commandbuilder.commandnodes.ZscriptCommandNode; -import net.zscript.javaclient.commandbuilder.ZscriptResponse; -import net.zscript.javareceiver.tokenizer.ZscriptExpression; +import net.zscript.tokenizer.ZscriptExpression; public class BlankCommandNode extends ZscriptCommandNode { diff --git a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/DefaultResponse.java b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/DefaultResponse.java index 73b1702ea..9c7281172 100644 --- a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/DefaultResponse.java +++ b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/DefaultResponse.java @@ -3,7 +3,7 @@ import java.util.OptionalInt; import net.zscript.javaclient.commandbuilder.ZscriptResponse; -import net.zscript.javareceiver.tokenizer.ZscriptExpression; +import net.zscript.tokenizer.ZscriptExpression; public class DefaultResponse implements ZscriptResponse { private final ZscriptExpression expression; diff --git a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/FailureCommandNode.java b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/FailureCommandNode.java index 94510718f..db38ba4aa 100644 --- a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/FailureCommandNode.java +++ b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/FailureCommandNode.java @@ -1,15 +1,13 @@ package net.zscript.javaclient.commandbuilder.defaultCommands; -import java.nio.charset.StandardCharsets; import java.util.Collections; import java.util.Map; -import net.zscript.javaclient.commandbuilder.ZscriptResponse; import net.zscript.javaclient.commandbuilder.commandnodes.CommandSequenceNode; import net.zscript.javaclient.commandbuilder.commandnodes.ZscriptCommandNode; -import net.zscript.javareceiver.tokenizer.ZscriptExpression; import net.zscript.model.components.Zchars; import net.zscript.model.components.ZscriptStatus; +import net.zscript.tokenizer.ZscriptExpression; public class FailureCommandNode extends ZscriptCommandNode { diff --git a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/GenericCommandBuilder.java b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/GenericCommandBuilder.java index 31529afcc..5b65eba5b 100644 --- a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/GenericCommandBuilder.java +++ b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/defaultCommands/GenericCommandBuilder.java @@ -1,12 +1,8 @@ package net.zscript.javaclient.commandbuilder.defaultCommands; -import java.nio.charset.StandardCharsets; - -import net.zscript.javaclient.commandbuilder.ZscriptResponse; import net.zscript.javaclient.commandbuilder.commandnodes.ZscriptCommandBuilder; import net.zscript.javaclient.commandbuilder.commandnodes.ZscriptCommandNode; -import net.zscript.javareceiver.tokenizer.ZscriptExpression; -import net.zscript.model.components.Zchars; +import net.zscript.tokenizer.ZscriptExpression; public class GenericCommandBuilder extends ZscriptCommandBuilder { public ZscriptCommandBuilder setField(byte key, int value) { diff --git a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/notifications/NotificationSection.java b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/notifications/NotificationSection.java index 5508a7384..a1f2d23cb 100644 --- a/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/notifications/NotificationSection.java +++ b/clients/java-client-lib/client-command-api/src/main/java/net/zscript/javaclient/commandbuilder/notifications/NotificationSection.java @@ -3,7 +3,7 @@ import net.zscript.javaclient.commandbuilder.Respondable; import net.zscript.javaclient.commandbuilder.ZscriptResponse; import net.zscript.javaclient.commandbuilder.commandnodes.ResponseCaptor; -import net.zscript.javareceiver.tokenizer.ZscriptExpression; +import net.zscript.tokenizer.ZscriptExpression; public abstract class NotificationSection implements Respondable { public abstract Class getResponseType(); diff --git a/clients/java-client-lib/client-command-api/src/test/java/net/zscript/javaclient/commandbuilder/DemoActivateCommand.java b/clients/java-client-lib/client-command-api/src/test/java/net/zscript/javaclient/commandbuilder/DemoActivateCommand.java index 4114046c1..27a5b8d8b 100644 --- a/clients/java-client-lib/client-command-api/src/test/java/net/zscript/javaclient/commandbuilder/DemoActivateCommand.java +++ b/clients/java-client-lib/client-command-api/src/test/java/net/zscript/javaclient/commandbuilder/DemoActivateCommand.java @@ -2,7 +2,7 @@ import net.zscript.javaclient.commandbuilder.commandnodes.ZscriptCommandBuilder; import net.zscript.javaclient.commandbuilder.commandnodes.ZscriptCommandNode; -import net.zscript.javareceiver.tokenizer.ZscriptExpression; +import net.zscript.tokenizer.ZscriptExpression; public class DemoActivateCommand extends ZscriptCommandNode { // private final boolean alreadyActivated; diff --git a/clients/java-client-lib/client-command-api/src/test/java/net/zscript/javaclient/commandbuilder/commandNodes/DemoCapabilitiesCommandBuilder.java b/clients/java-client-lib/client-command-api/src/test/java/net/zscript/javaclient/commandbuilder/commandNodes/DemoCapabilitiesCommandBuilder.java index 59b57610a..bbb3db9f9 100644 --- a/clients/java-client-lib/client-command-api/src/test/java/net/zscript/javaclient/commandbuilder/commandNodes/DemoCapabilitiesCommandBuilder.java +++ b/clients/java-client-lib/client-command-api/src/test/java/net/zscript/javaclient/commandbuilder/commandNodes/DemoCapabilitiesCommandBuilder.java @@ -2,11 +2,9 @@ import static java.nio.charset.StandardCharsets.ISO_8859_1; -import net.zscript.javaclient.commandbuilder.ValidatingResponse; import net.zscript.javaclient.commandbuilder.commandnodes.ZscriptCommandBuilder; import net.zscript.javaclient.commandbuilder.commandnodes.ZscriptCommandNode; -import net.zscript.javaclient.commandbuilder.defaultCommands.DefaultResponse; -import net.zscript.javareceiver.tokenizer.ZscriptExpression; +import net.zscript.tokenizer.ZscriptExpression; public class DemoCapabilitiesCommandBuilder extends ZscriptCommandBuilder { public static final int USER_FIRMWARE = 0; @@ -74,4 +72,3 @@ public boolean canFail() { return false; } } - diff --git a/clients/java-client-lib/client-command-api/src/test/java/net/zscript/javaclient/commandbuilder/commandNodes/DemoCapabilitiesCommandResponse.java b/clients/java-client-lib/client-command-api/src/test/java/net/zscript/javaclient/commandbuilder/commandNodes/DemoCapabilitiesCommandResponse.java index 576ab83b3..6cd2a9ec3 100644 --- a/clients/java-client-lib/client-command-api/src/test/java/net/zscript/javaclient/commandbuilder/commandNodes/DemoCapabilitiesCommandResponse.java +++ b/clients/java-client-lib/client-command-api/src/test/java/net/zscript/javaclient/commandbuilder/commandNodes/DemoCapabilitiesCommandResponse.java @@ -1,7 +1,7 @@ package net.zscript.javaclient.commandbuilder.commandNodes; import net.zscript.javaclient.commandbuilder.ValidatingResponse; -import net.zscript.javareceiver.tokenizer.ZscriptExpression; +import net.zscript.tokenizer.ZscriptExpression; public class DemoCapabilitiesCommandResponse extends ValidatingResponse { private int infoType = DemoCapabilitiesCommandBuilder.USER_FIRMWARE; diff --git a/clients/java-client-lib/client-command-builders/src/main/resources/templates/commands/JavaCommandBuilder.mustache b/clients/java-client-lib/client-command-builders/src/main/resources/templates/commands/JavaCommandBuilder.mustache index b799af772..572803439 100644 --- a/clients/java-client-lib/client-command-builders/src/main/resources/templates/commands/JavaCommandBuilder.mustache +++ b/clients/java-client-lib/client-command-builders/src/main/resources/templates/commands/JavaCommandBuilder.mustache @@ -13,7 +13,7 @@ import net.zscript.javaclient.commandbuilder.defaultCommands.*; import net.zscript.javaclient.commandbuilder.*; import net.zscript.javaclient.commandbuilder.commandnodes.*; import net.zscript.javaclient.commandbuilder.notifications.*; -import net.zscript.javareceiver.tokenizer.*; +import net.zscript.tokenizer.*; import net.zscript.model.components.*; /** diff --git a/clients/java-client-lib/client-command-builders/src/test/java/net/zscript/model/modules/testing/test/JavaCommandBuilderResponseTest.java b/clients/java-client-lib/client-command-builders/src/test/java/net/zscript/model/modules/testing/test/JavaCommandBuilderResponseTest.java index 1e7803382..bf4946231 100644 --- a/clients/java-client-lib/client-command-builders/src/test/java/net/zscript/model/modules/testing/test/JavaCommandBuilderResponseTest.java +++ b/clients/java-client-lib/client-command-builders/src/test/java/net/zscript/model/modules/testing/test/JavaCommandBuilderResponseTest.java @@ -1,5 +1,7 @@ package net.zscript.model.modules.testing.test; +import java.util.function.Consumer; + import static net.zscript.client.modules.test.testing.TestingModule.TestCommand0Command.TestCommand0Response.BitsetRespTestU.Lion; import static net.zscript.client.modules.test.testing.TestingModule.TestCommand0Command.TestCommand0Response.BitsetRespTestU.Tabby; import static net.zscript.client.modules.test.testing.TestingModule.TestCommand0Command.TestCommand0Response.BitsetRespTestU.Tiger; @@ -8,20 +10,18 @@ import org.junit.jupiter.api.Test; -import java.util.function.Consumer; - import net.zscript.client.modules.test.testing.TestingModule; import net.zscript.client.modules.test.testing.TestingModule.TestCommand0Command.TestCommand0Response.BitsetRespTestV; import net.zscript.client.modules.test.testing.TestingModule.TestCommand0Command.TestCommand0Response.EnumRespTestP; import net.zscript.client.modules.test.testing.TestingModule.TestCommand0Command.TestCommand0Response.EnumRespTestQ; +import net.zscript.javaclient.commandbuilder.ZscriptResponse; import net.zscript.javaclient.commandbuilder.commandnodes.ResponseCaptor; import net.zscript.javaclient.commandbuilder.commandnodes.ZscriptCommandBuilder; import net.zscript.javaclient.commandbuilder.commandnodes.ZscriptCommandNode; -import net.zscript.javaclient.commandbuilder.ZscriptResponse; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader; -import net.zscript.javareceiver.tokenizer.TokenExtendingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; -import net.zscript.javareceiver.tokenizer.ZscriptTokenExpression; +import net.zscript.tokenizer.TokenBuffer.TokenReader; +import net.zscript.tokenizer.TokenExtendingBuffer; +import net.zscript.tokenizer.Tokenizer; +import net.zscript.tokenizer.ZscriptTokenExpression; public class JavaCommandBuilderResponseTest { final TokenExtendingBuffer buffer = new TokenExtendingBuffer(); diff --git a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/addressing/CompleteAddressedResponse.java b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/addressing/CompleteAddressedResponse.java index 94f306007..ee8c1a849 100644 --- a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/addressing/CompleteAddressedResponse.java +++ b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/addressing/CompleteAddressedResponse.java @@ -4,12 +4,12 @@ import java.util.List; import java.util.Optional; -import static net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader; -import static net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; +import static net.zscript.tokenizer.TokenBuffer.TokenReader; +import static net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; import net.zscript.javaclient.sequence.ResponseSequence; -import net.zscript.javareceiver.tokenizer.Tokenizer; import net.zscript.model.components.Zchars; +import net.zscript.tokenizer.Tokenizer; import net.zscript.util.OptIterator; public class CompleteAddressedResponse { diff --git a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/addressing/ZscriptAddress.java b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/addressing/ZscriptAddress.java index 0d9ef3a75..388321daa 100644 --- a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/addressing/ZscriptAddress.java +++ b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/addressing/ZscriptAddress.java @@ -3,7 +3,7 @@ import java.util.Arrays; import java.util.List; -import static net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; +import static net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; import net.zscript.model.components.Zchars; import net.zscript.util.ByteString.ByteAppendable; diff --git a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/commandPaths/CommandExecutionPath.java b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/commandPaths/CommandExecutionPath.java index 8b7e0a67b..b00a6d559 100644 --- a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/commandPaths/CommandExecutionPath.java +++ b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/commandPaths/CommandExecutionPath.java @@ -13,12 +13,12 @@ import java.util.Optional; import java.util.Set; -import static net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; +import static net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; -import net.zscript.javareceiver.tokenizer.TokenBufferIterator; -import net.zscript.javareceiver.tokenizer.Tokenizer; import net.zscript.model.ZscriptModel; import net.zscript.model.components.Zchars; +import net.zscript.tokenizer.TokenBufferIterator; +import net.zscript.tokenizer.Tokenizer; import net.zscript.util.ByteString.ByteAppendable; import net.zscript.util.ByteString.ByteStringBuilder; import net.zscript.util.OptIterator; diff --git a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/commandPaths/ResponseExecutionPath.java b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/commandPaths/ResponseExecutionPath.java index 1375442fd..2a4efbb70 100644 --- a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/commandPaths/ResponseExecutionPath.java +++ b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/commandPaths/ResponseExecutionPath.java @@ -6,11 +6,11 @@ import java.util.ListIterator; import java.util.Optional; -import static net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; +import static net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; -import net.zscript.javareceiver.tokenizer.TokenBufferIterator; -import net.zscript.javareceiver.tokenizer.Tokenizer; import net.zscript.model.components.Zchars; +import net.zscript.tokenizer.TokenBufferIterator; +import net.zscript.tokenizer.Tokenizer; import net.zscript.util.ByteString.ByteAppendable; import net.zscript.util.ByteString.ByteStringBuilder; diff --git a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/commandPaths/ZscriptFieldSet.java b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/commandPaths/ZscriptFieldSet.java index 433478a21..a8b63084b 100644 --- a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/commandPaths/ZscriptFieldSet.java +++ b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/commandPaths/ZscriptFieldSet.java @@ -9,11 +9,11 @@ import static java.util.Collections.emptyList; -import net.zscript.javareceiver.tokenizer.BlockIterator; -import net.zscript.javareceiver.tokenizer.TokenBuffer; -import net.zscript.javareceiver.tokenizer.TokenBufferIterator; -import net.zscript.javareceiver.tokenizer.ZscriptExpression; import net.zscript.model.components.Zchars; +import net.zscript.tokenizer.BlockIterator; +import net.zscript.tokenizer.TokenBuffer; +import net.zscript.tokenizer.TokenBufferIterator; +import net.zscript.tokenizer.ZscriptExpression; import net.zscript.util.ByteString; import net.zscript.util.ByteString.ByteAppendable; import net.zscript.util.ByteString.ByteStringBuilder; diff --git a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/sequence/CommandSequence.java b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/sequence/CommandSequence.java index b888ae6b6..0933df000 100644 --- a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/sequence/CommandSequence.java +++ b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/sequence/CommandSequence.java @@ -2,12 +2,12 @@ import java.util.Collection; -import static net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; +import static net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; import net.zscript.javaclient.commandPaths.CommandExecutionPath; -import net.zscript.javareceiver.tokenizer.TokenBufferIterator; import net.zscript.model.ZscriptModel; import net.zscript.model.components.Zchars; +import net.zscript.tokenizer.TokenBufferIterator; import net.zscript.util.ByteString.ByteAppendable; import net.zscript.util.ByteString.ByteStringBuilder; diff --git a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/sequence/ResponseSequence.java b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/sequence/ResponseSequence.java index 8d67a8fcd..b8280687a 100644 --- a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/sequence/ResponseSequence.java +++ b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/sequence/ResponseSequence.java @@ -1,9 +1,9 @@ package net.zscript.javaclient.sequence; import net.zscript.javaclient.commandPaths.ResponseExecutionPath; -import net.zscript.javareceiver.tokenizer.TokenBuffer; -import net.zscript.javareceiver.tokenizer.TokenBufferIterator; import net.zscript.model.components.Zchars; +import net.zscript.tokenizer.TokenBuffer; +import net.zscript.tokenizer.TokenBufferIterator; import net.zscript.util.ByteString.ByteAppendable; import net.zscript.util.ByteString.ByteStringBuilder; diff --git a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/sequence/ZscriptLockSet.java b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/sequence/ZscriptLockSet.java index e3a08105a..76643b561 100644 --- a/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/sequence/ZscriptLockSet.java +++ b/clients/java-client-lib/client-core/src/main/java/net/zscript/javaclient/sequence/ZscriptLockSet.java @@ -2,7 +2,7 @@ import java.util.BitSet; -import static net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; +import static net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; import net.zscript.model.components.Zchars; import net.zscript.util.ByteString.ByteAppendable; diff --git a/clients/java-client-lib/client-core/src/test/java/net/zscript/javaclient/addressing/ZscriptAddressTest.java b/clients/java-client-lib/client-core/src/test/java/net/zscript/javaclient/addressing/ZscriptAddressTest.java index 29da6a793..888288505 100644 --- a/clients/java-client-lib/client-core/src/test/java/net/zscript/javaclient/addressing/ZscriptAddressTest.java +++ b/clients/java-client-lib/client-core/src/test/java/net/zscript/javaclient/addressing/ZscriptAddressTest.java @@ -10,12 +10,12 @@ import nl.jqno.equalsverifier.EqualsVerifier; import org.junit.jupiter.api.Test; -import net.zscript.javareceiver.tokenizer.TokenBuffer; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; -import net.zscript.javareceiver.tokenizer.TokenRingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; import net.zscript.model.components.Zchars; +import net.zscript.tokenizer.TokenBuffer; +import net.zscript.tokenizer.TokenBuffer.TokenReader; +import net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; +import net.zscript.tokenizer.TokenRingBuffer; +import net.zscript.tokenizer.Tokenizer; import net.zscript.util.ByteString; class ZscriptAddressTest { diff --git a/clients/java-client-lib/client-core/src/test/java/net/zscript/javaclient/commandPrinting/CommandExecutionPathRegenerationTest.java b/clients/java-client-lib/client-core/src/test/java/net/zscript/javaclient/commandPrinting/CommandExecutionPathRegenerationTest.java index c1b4af6c5..0b7af8ed3 100644 --- a/clients/java-client-lib/client-core/src/test/java/net/zscript/javaclient/commandPrinting/CommandExecutionPathRegenerationTest.java +++ b/clients/java-client-lib/client-core/src/test/java/net/zscript/javaclient/commandPrinting/CommandExecutionPathRegenerationTest.java @@ -11,8 +11,8 @@ import org.junit.jupiter.params.provider.MethodSource; import net.zscript.javaclient.commandPaths.CommandExecutionPath; -import net.zscript.javareceiver.tokenizer.TokenExtendingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.TokenExtendingBuffer; +import net.zscript.tokenizer.Tokenizer; public class CommandExecutionPathRegenerationTest { diff --git a/clients/java-client-lib/client-core/src/test/java/net/zscript/javaclient/commandPrinting/CompleteCommandGrapherTest.java b/clients/java-client-lib/client-core/src/test/java/net/zscript/javaclient/commandPrinting/CompleteCommandGrapherTest.java index 18c8707e3..8f49fd9f3 100644 --- a/clients/java-client-lib/client-core/src/test/java/net/zscript/javaclient/commandPrinting/CompleteCommandGrapherTest.java +++ b/clients/java-client-lib/client-core/src/test/java/net/zscript/javaclient/commandPrinting/CompleteCommandGrapherTest.java @@ -13,8 +13,8 @@ import net.zscript.ascii.AnsiCharacterStylePrinter; import net.zscript.javaclient.commandPaths.CommandExecutionPath; -import net.zscript.javareceiver.tokenizer.TokenExtendingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.TokenExtendingBuffer; +import net.zscript.tokenizer.Tokenizer; public class CompleteCommandGrapherTest { CommandGraph.GraphPrintSettings basicSettings = new CommandGraph.GraphPrintSettings(new StandardCommandGrapher.CommandPrintSettings(" ", VerbositySetting.NAME), true, 2, diff --git a/clients/java-client-lib/client-main/pom.xml b/clients/java-client-lib/client-main/pom.xml index a3800f006..c6d31d286 100644 --- a/clients/java-client-lib/client-main/pom.xml +++ b/clients/java-client-lib/client-main/pom.xml @@ -29,11 +29,18 @@ [2.0.0,3.0.0) + net.zscript zscript-java-client-command-builders ${project.version} test + + net.zscript + java-receiver + ${project.version} + test + diff --git a/clients/java-client-lib/client-main/src/main/java/net/zscript/javaclient/connectors/RawConnection.java b/clients/java-client-lib/client-main/src/main/java/net/zscript/javaclient/connectors/RawConnection.java index 2857bd59d..11c56f186 100644 --- a/clients/java-client-lib/client-main/src/main/java/net/zscript/javaclient/connectors/RawConnection.java +++ b/clients/java-client-lib/client-main/src/main/java/net/zscript/javaclient/connectors/RawConnection.java @@ -14,8 +14,8 @@ import net.zscript.javaclient.addressing.CompleteAddressedResponse; import net.zscript.javaclient.nodes.Connection; import net.zscript.javaclient.threading.ZscriptWorkerThread; -import net.zscript.javareceiver.tokenizer.TokenExtendingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.TokenExtendingBuffer; +import net.zscript.tokenizer.Tokenizer; public abstract class RawConnection implements Connection, AutoCloseable { private final ZscriptWorkerThread thread = new ZscriptWorkerThread(); diff --git a/clients/java-client-lib/client-main/src/main/java/net/zscript/javaclient/devices/Device.java b/clients/java-client-lib/client-main/src/main/java/net/zscript/javaclient/devices/Device.java index 87bbde168..63a78968c 100644 --- a/clients/java-client-lib/client-main/src/main/java/net/zscript/javaclient/devices/Device.java +++ b/clients/java-client-lib/client-main/src/main/java/net/zscript/javaclient/devices/Device.java @@ -25,9 +25,9 @@ import net.zscript.javaclient.commandbuilder.notifications.NotificationId; import net.zscript.javaclient.nodes.ZscriptNode; import net.zscript.javaclient.sequence.CommandSequence; -import net.zscript.javareceiver.tokenizer.TokenExtendingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; import net.zscript.model.ZscriptModel; +import net.zscript.tokenizer.TokenExtendingBuffer; +import net.zscript.tokenizer.Tokenizer; public class Device { private final ZscriptModel model; diff --git a/clients/java-client-lib/client-main/src/test/java/net/zscript/javaclient/connection/LocalZscriptConnection.java b/clients/java-client-lib/client-main/src/test/java/net/zscript/javaclient/connection/LocalZscriptConnection.java index 7b0975487..cf66c1d24 100644 --- a/clients/java-client-lib/client-main/src/test/java/net/zscript/javaclient/connection/LocalZscriptConnection.java +++ b/clients/java-client-lib/client-main/src/test/java/net/zscript/javaclient/connection/LocalZscriptConnection.java @@ -1,8 +1,5 @@ package net.zscript.javaclient.connection; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - import java.io.ByteArrayOutputStream; import java.util.ArrayDeque; import java.util.Queue; @@ -10,8 +7,10 @@ import java.util.concurrent.Executors; import java.util.function.Consumer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import net.zscript.javaclient.connectors.RawConnection; -import net.zscript.javaclient.connectors.serial.SerialConnection; import net.zscript.javareceiver.core.OutStream; import net.zscript.javareceiver.core.OutputStreamOutStream; import net.zscript.javareceiver.core.Zscript; @@ -19,8 +18,8 @@ import net.zscript.javareceiver.execution.CommandContext; import net.zscript.javareceiver.modules.core.ZscriptCoreModule; import net.zscript.javareceiver.modules.outerCore.ZscriptOuterCoreModule; -import net.zscript.javareceiver.tokenizer.TokenRingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.TokenRingBuffer; +import net.zscript.tokenizer.Tokenizer; public class LocalZscriptConnection extends RawConnection { private static final Logger LOG = LoggerFactory.getLogger(LocalZscriptConnection.class); diff --git a/clients/java-client-lib/client-main/src/test/java/net/zscript/javaclient/connection/SerialMain.java b/clients/java-client-lib/client-main/src/test/java/net/zscript/javaclient/connection/SerialMain.java index c4a048038..731b74081 100644 --- a/clients/java-client-lib/client-main/src/test/java/net/zscript/javaclient/connection/SerialMain.java +++ b/clients/java-client-lib/client-main/src/test/java/net/zscript/javaclient/connection/SerialMain.java @@ -13,9 +13,9 @@ import net.zscript.javaclient.connectors.ZscriptConnectors; import net.zscript.javaclient.connectors.serial.SerialConnector; import net.zscript.javaclient.sequence.CommandSequence; -import net.zscript.javareceiver.tokenizer.TokenExtendingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; import net.zscript.model.modules.base.CoreModule; +import net.zscript.tokenizer.TokenExtendingBuffer; +import net.zscript.tokenizer.Tokenizer; class SerialMain { public static void main(String[] args) throws IOException, InterruptedException { diff --git a/clients/java-client-lib/client-main/src/test/java/net/zscript/javaclient/connection/TcpMain.java b/clients/java-client-lib/client-main/src/test/java/net/zscript/javaclient/connection/TcpMain.java index 7e3453c46..095efd398 100644 --- a/clients/java-client-lib/client-main/src/test/java/net/zscript/javaclient/connection/TcpMain.java +++ b/clients/java-client-lib/client-main/src/test/java/net/zscript/javaclient/connection/TcpMain.java @@ -8,11 +8,10 @@ import net.zscript.javaclient.connectors.RawConnection; import net.zscript.javaclient.connectors.ZscriptConnectors; import net.zscript.javaclient.connectors.ZscriptConnectors.ZscriptConnector; -import net.zscript.javaclient.devices.Device; import net.zscript.javaclient.sequence.CommandSequence; -import net.zscript.javareceiver.tokenizer.TokenExtendingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; import net.zscript.model.modules.base.CoreModule; +import net.zscript.tokenizer.TokenExtendingBuffer; +import net.zscript.tokenizer.Tokenizer; class TcpMain { public static void main(String[] args) throws Exception { diff --git a/clients/java-client-lib/pom.xml b/clients/java-client-lib/pom.xml index 4858ceacf..11f715190 100644 --- a/clients/java-client-lib/pom.xml +++ b/clients/java-client-lib/pom.xml @@ -33,7 +33,7 @@ net.zscript - java-receiver + java-tokenizer ${project.version} diff --git a/receivers/jvm/java-receiver/pom.xml b/receivers/jvm/java-receiver/pom.xml index f9383a7ff..3b2e1defb 100644 --- a/receivers/jvm/java-receiver/pom.xml +++ b/receivers/jvm/java-receiver/pom.xml @@ -23,5 +23,10 @@ zscript-java-model-components ${project.version} + + net.zscript + java-tokenizer + ${project.version} + diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/core/AbstractOutStream.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/core/AbstractOutStream.java index ea19c8931..646735a3d 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/core/AbstractOutStream.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/core/AbstractOutStream.java @@ -3,8 +3,8 @@ import java.nio.charset.StandardCharsets; import net.zscript.javareceiver.execution.ZscriptField; -import net.zscript.javareceiver.tokenizer.BlockIterator; import net.zscript.model.components.Zchars; +import net.zscript.tokenizer.BlockIterator; public abstract class AbstractOutStream implements OutStream, ZscriptCommandOutStream { /** diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/core/ZscriptChannel.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/core/ZscriptChannel.java index 6d344e37e..ff24dedc2 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/core/ZscriptChannel.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/core/ZscriptChannel.java @@ -5,7 +5,7 @@ import net.zscript.javareceiver.semanticParser.ExecutionActionFactory; import net.zscript.javareceiver.semanticParser.SemanticAction; import net.zscript.javareceiver.semanticParser.SemanticParser; -import net.zscript.javareceiver.tokenizer.TokenBuffer; +import net.zscript.tokenizer.TokenBuffer; /** * Abstract implementation of a Channel that integrates a parser and buffer, and a source of actions that execute the received commands. As an ActionSource, it provides executable diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/execution/AddressingContext.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/execution/AddressingContext.java index 758a3077a..cd6ef2189 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/execution/AddressingContext.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/execution/AddressingContext.java @@ -6,11 +6,11 @@ import net.zscript.javareceiver.core.Zscript; import net.zscript.javareceiver.core.ZscriptCommandOutStream; import net.zscript.javareceiver.semanticParser.ContextView; -import net.zscript.javareceiver.tokenizer.BlockIterator; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; -import net.zscript.javareceiver.tokenizer.Tokenizer; import net.zscript.model.components.Zchars; import net.zscript.model.components.ZscriptStatus; +import net.zscript.tokenizer.BlockIterator; +import net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; +import net.zscript.tokenizer.Tokenizer; import net.zscript.util.OptIterator; public class AddressingContext extends AbstractContext { diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/execution/CommandContext.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/execution/CommandContext.java index 11240eaa0..48e7a2b42 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/execution/CommandContext.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/execution/CommandContext.java @@ -8,12 +8,12 @@ import net.zscript.javareceiver.core.Zscript; import net.zscript.javareceiver.core.ZscriptCommandOutStream; import net.zscript.javareceiver.semanticParser.ContextView; -import net.zscript.javareceiver.tokenizer.BlockIterator; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; -import net.zscript.javareceiver.tokenizer.ZscriptExpression; -import net.zscript.javareceiver.tokenizer.ZscriptTokenExpression; import net.zscript.model.components.Zchars; import net.zscript.model.components.ZscriptStatus; +import net.zscript.tokenizer.BlockIterator; +import net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; +import net.zscript.tokenizer.ZscriptExpression; +import net.zscript.tokenizer.ZscriptTokenExpression; import net.zscript.util.ByteString; import net.zscript.util.OptIterator; diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/execution/ZscriptField.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/execution/ZscriptField.java index 7d7953867..0b444ad4b 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/execution/ZscriptField.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/execution/ZscriptField.java @@ -1,8 +1,8 @@ package net.zscript.javareceiver.execution; -import net.zscript.javareceiver.tokenizer.BlockIterator; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; import net.zscript.model.components.Zchars; +import net.zscript.tokenizer.BlockIterator; +import net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; public class ZscriptField implements Iterable { private final ReadToken token; diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/modules/core/ZscriptCoreModule.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/modules/core/ZscriptCoreModule.java index b5165d33e..801cfcfbf 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/modules/core/ZscriptCoreModule.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/modules/core/ZscriptCoreModule.java @@ -3,8 +3,8 @@ import net.zscript.javareceiver.execution.AddressingContext; import net.zscript.javareceiver.execution.CommandContext; import net.zscript.javareceiver.modules.ZscriptModule; -import net.zscript.javareceiver.tokenizer.BlockIterator; import net.zscript.model.components.ZscriptStatus; +import net.zscript.tokenizer.BlockIterator; public class ZscriptCoreModule implements ZscriptModule { private final ZscriptCapabilitiesCommand capabilitiesCmd = new ZscriptCapabilitiesCommand(); diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/modules/scriptSpaces/ScriptSpaceWriteCommand.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/modules/scriptSpaces/ScriptSpaceWriteCommand.java index bcb1cc2e3..373e3eaa8 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/modules/scriptSpaces/ScriptSpaceWriteCommand.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/modules/scriptSpaces/ScriptSpaceWriteCommand.java @@ -7,9 +7,9 @@ import net.zscript.javareceiver.core.ZscriptCommandOutStream; import net.zscript.javareceiver.execution.CommandContext; import net.zscript.javareceiver.scriptSpaces.ScriptSpace; -import net.zscript.javareceiver.tokenizer.ScriptSpaceBuffer.ScriptSpaceWriterBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; import net.zscript.model.components.ZscriptStatus; +import net.zscript.tokenizer.ScriptSpaceBuffer.ScriptSpaceWriterBuffer; +import net.zscript.tokenizer.Tokenizer; public class ScriptSpaceWriteCommand { public static void execute(List spaces, CommandContext ctx) { diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/scriptSpaces/ScriptSpace.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/scriptSpaces/ScriptSpace.java index fdaa8e87c..4324c33bf 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/scriptSpaces/ScriptSpace.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/scriptSpaces/ScriptSpace.java @@ -8,9 +8,9 @@ import net.zscript.javareceiver.execution.ZscriptAction; import net.zscript.javareceiver.semanticParser.ExecutionActionFactory; import net.zscript.javareceiver.semanticParser.SemanticParser; -import net.zscript.javareceiver.tokenizer.ScriptSpaceBuffer; -import net.zscript.javareceiver.tokenizer.ScriptSpaceBuffer.ScriptSpaceWriterBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.ScriptSpaceBuffer; +import net.zscript.tokenizer.ScriptSpaceBuffer.ScriptSpaceWriterBuffer; +import net.zscript.tokenizer.Tokenizer; public class ScriptSpace implements ActionSource { private final ScriptSpaceOutStream outStream; diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/semanticParser/ContextView.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/semanticParser/ContextView.java index 5f4fa9fa1..bc080456a 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/semanticParser/ContextView.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/semanticParser/ContextView.java @@ -1,6 +1,6 @@ package net.zscript.javareceiver.semanticParser; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader; +import net.zscript.tokenizer.TokenBuffer.TokenReader; /** * Defines parser state methods accessed by Command/Address contexts. diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/semanticParser/SemanticAction.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/semanticParser/SemanticAction.java index 7227927df..7f28d4af8 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/semanticParser/SemanticAction.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/semanticParser/SemanticAction.java @@ -6,9 +6,9 @@ import net.zscript.javareceiver.execution.AddressingContext; import net.zscript.javareceiver.execution.CommandContext; import net.zscript.javareceiver.execution.ZscriptAction; -import net.zscript.javareceiver.tokenizer.Tokenizer; import net.zscript.model.components.Zchars; import net.zscript.model.components.ZscriptStatus; +import net.zscript.tokenizer.Tokenizer; public class SemanticAction implements ZscriptAction { public enum ActionType { diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/semanticParser/SemanticParser.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/semanticParser/SemanticParser.java index 240901da9..089376b89 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/semanticParser/SemanticParser.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/semanticParser/SemanticParser.java @@ -7,14 +7,14 @@ import net.zscript.javareceiver.core.Zscript; import net.zscript.javareceiver.core.ZscriptLocks; import net.zscript.javareceiver.semanticParser.SemanticAction.ActionType; -import net.zscript.javareceiver.tokenizer.TokenBuffer; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; -import net.zscript.javareceiver.tokenizer.TokenBufferFlags; -import net.zscript.javareceiver.tokenizer.TokenBufferIterator; -import net.zscript.javareceiver.tokenizer.Tokenizer; import net.zscript.model.components.Zchars; import net.zscript.model.components.ZscriptStatus; +import net.zscript.tokenizer.TokenBuffer; +import net.zscript.tokenizer.TokenBuffer.TokenReader; +import net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; +import net.zscript.tokenizer.TokenBufferFlags; +import net.zscript.tokenizer.TokenBufferIterator; +import net.zscript.tokenizer.Tokenizer; public class SemanticParser implements ParseState, ContextView { // 6 bytes + 1 pointer diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptCommandUnit.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptCommandUnit.java index 968301ab5..d7b6b220f 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptCommandUnit.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptCommandUnit.java @@ -1,6 +1,6 @@ package net.zscript.javareceiver.treeParser; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; +import net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; public class ZscriptCommandUnit implements ZscriptSequenceUnit { private final ReadToken start; diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptOrSeparatedUnit.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptOrSeparatedUnit.java index e2432148e..942e0df04 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptOrSeparatedUnit.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptOrSeparatedUnit.java @@ -1,7 +1,7 @@ package net.zscript.javareceiver.treeParser; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; +import net.zscript.tokenizer.Tokenizer; public class ZscriptOrSeparatedUnit implements ZscriptSequenceUnit { private final ZscriptSequenceUnitPlace before; diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptSequenceUnitPlace.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptSequenceUnitPlace.java index b098cb59f..4391befcf 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptSequenceUnitPlace.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptSequenceUnitPlace.java @@ -1,6 +1,6 @@ package net.zscript.javareceiver.treeParser; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; +import net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; public class ZscriptSequenceUnitPlace { private ZscriptSequenceUnit unit; diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptTreeParser.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptTreeParser.java index 9042cd1da..b031934f5 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptTreeParser.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptTreeParser.java @@ -1,13 +1,13 @@ package net.zscript.javareceiver.treeParser; -import static net.zscript.javareceiver.tokenizer.TokenBuffer.isSequenceEndMarker; - import java.util.ArrayList; import java.util.List; import java.util.Optional; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import static net.zscript.tokenizer.TokenBuffer.isSequenceEndMarker; + +import net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; +import net.zscript.tokenizer.Tokenizer; import net.zscript.util.OptIterator; public class ZscriptTreeParser { @@ -30,7 +30,7 @@ public static ZscriptSequenceUnitPlace parseAll(ReadToken start) { } ZscriptSequenceUnitPlace place = new ZscriptSequenceUnitPlace(start, Tokenizer.NORMAL_SEQUENCE_END, -lowest); while (place.parse()) { - ; + // just keep parsing } return place; } @@ -66,7 +66,7 @@ static ZscriptSequenceUnit parse(ReadToken start, byte endMarker, int parenStart minParenLevel = 0; } if (!hasMarker) { -// System.out.println("Command: " + (char) start.getKey() + " : " + Integer.toHexString(Byte.toUnsignedInt(endMarker))); + // System.out.println("Command: " + (char) start.getKey() + " : " + Integer.toHexString(Byte.toUnsignedInt(endMarker))); return new ZscriptCommandUnit(start); } @@ -81,7 +81,7 @@ static ZscriptSequenceUnit parse(ReadToken start, byte endMarker, int parenStart firstOnLevel = t; } if (t.getKey() == Tokenizer.CMD_END_ORELSE) { -// System.out.println("Or: " + (char) start.getKey() + " : " + Integer.toHexString(Byte.toUnsignedInt(endMarker))); + // System.out.println("Or: " + (char) start.getKey() + " : " + Integer.toHexString(Byte.toUnsignedInt(endMarker))); return new ZscriptOrSeparatedUnit(firstOnLevel, Math.max(parenStartCount - minParenLevel, 0), it.next().get(), endMarker); } } @@ -130,7 +130,7 @@ static ZscriptSequenceUnit parse(ReadToken start, byte endMarker, int parenStart it = start.getNextTokens(); for (opt = it.next(); opt.isPresent() && !opt.get().isMarker(); opt = it.next()) { } -// System.out.println("Command2: " + (char) start.getKey() + " : " + Integer.toHexString(Byte.toUnsignedInt(endMarker))); + // System.out.println("Command2: " + (char) start.getKey() + " : " + Integer.toHexString(Byte.toUnsignedInt(endMarker))); return new ZscriptCommandUnit(opt.get()); } if (prevStart == null) { @@ -138,7 +138,7 @@ static ZscriptSequenceUnit parse(ReadToken start, byte endMarker, int parenStart } units.add(new ZscriptSequenceUnitPlace(prevStart, endMarker, parenLeft)); -// System.out.println("And: " + (char) start.getKey() + " : " + Integer.toHexString(Byte.toUnsignedInt(endMarker))); + // System.out.println("And: " + (char) start.getKey() + " : " + Integer.toHexString(Byte.toUnsignedInt(endMarker))); return new ZscriptAndSequenceUnit(units); } diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptUnknownCommandUnit.java b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptUnknownCommandUnit.java index cd7d545b5..0af024f65 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptUnknownCommandUnit.java +++ b/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/treeParser/ZscriptUnknownCommandUnit.java @@ -1,12 +1,12 @@ package net.zscript.javareceiver.treeParser; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; +import net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; public class ZscriptUnknownCommandUnit implements ZscriptSequenceUnit { private final ZscriptSequenceUnitPlace place; - private final ReadToken start; - private final byte endMarker; - private final int startParenLevel; + private final ReadToken start; + private final byte endMarker; + private final int startParenLevel; public ZscriptUnknownCommandUnit(ZscriptSequenceUnitPlace place, ReadToken start, byte endMarker, int startParenLevel) { this.place = place; diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/demoRun/Main.java b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/demoRun/Main.java index 1194bdaee..9178f8e0d 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/demoRun/Main.java +++ b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/demoRun/Main.java @@ -10,8 +10,8 @@ import net.zscript.javareceiver.modules.outerCore.ZscriptOuterCoreModule; import net.zscript.javareceiver.modules.scriptSpaces.ScriptSpaceModule; import net.zscript.javareceiver.scriptSpaces.ScriptSpace; -import net.zscript.javareceiver.tokenizer.TokenRingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.TokenRingBuffer; +import net.zscript.tokenizer.Tokenizer; public class Main { public static void main(String[] args) throws IOException { diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/demoRun2/Main.java b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/demoRun2/Main.java index 3602e1092..5225f1155 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/demoRun2/Main.java +++ b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/demoRun2/Main.java @@ -1,8 +1,8 @@ package net.zscript.javareceiver.demoRun2; -import net.zscript.javareceiver.tokenizer.TokenRingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; import net.zscript.javareceiver.treeParser.ZscriptTreeParser; +import net.zscript.tokenizer.TokenRingBuffer; +import net.zscript.tokenizer.Tokenizer; public class Main { public static void main(String[] args) { diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/fullRun/StringChannel.java b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/fullRun/StringChannel.java index 1c10346dc..c237b5076 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/fullRun/StringChannel.java +++ b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/fullRun/StringChannel.java @@ -5,14 +5,14 @@ import net.zscript.javareceiver.core.OutStream; import net.zscript.javareceiver.core.ZscriptChannel; import net.zscript.javareceiver.execution.CommandContext; -import net.zscript.javareceiver.tokenizer.TokenBuffer; -import net.zscript.javareceiver.tokenizer.TokenRingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.TokenBuffer; +import net.zscript.tokenizer.TokenRingBuffer; +import net.zscript.tokenizer.Tokenizer; public class StringChannel extends ZscriptChannel { private final Tokenizer in; private final byte[] input; - private int index = 0; + private int index = 0; public static StringChannel from(String input, OutStream out) { TokenBuffer buffer = TokenRingBuffer.createBufferWithCapacity(64); diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/EchoCommandTest.java b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/EchoCommandTest.java index 5d83b433a..440169b1e 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/EchoCommandTest.java +++ b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/EchoCommandTest.java @@ -1,11 +1,11 @@ package net.zscript.javareceiver.semanticParser; -import static org.assertj.core.api.Assertions.assertThat; -import static org.junit.jupiter.params.provider.Arguments.of; - import java.io.IOException; import java.util.stream.Stream; +import static org.assertj.core.api.Assertions.assertThat; +import static org.junit.jupiter.params.provider.Arguments.of; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; @@ -15,9 +15,9 @@ import net.zscript.javareceiver.core.StringWriterOutStream; import net.zscript.javareceiver.core.Zscript; import net.zscript.javareceiver.modules.core.ZscriptCoreModule; -import net.zscript.javareceiver.tokenizer.TokenBuffer; -import net.zscript.javareceiver.tokenizer.TokenRingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.TokenBuffer; +import net.zscript.tokenizer.TokenRingBuffer; +import net.zscript.tokenizer.Tokenizer; class EchoCommandTest { private final TokenBuffer buffer = TokenRingBuffer.createBufferWithCapacity(256); diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/LockEchoParserTest.java b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/LockEchoParserTest.java index 3b66d3338..32bdb6ce1 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/LockEchoParserTest.java +++ b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/LockEchoParserTest.java @@ -1,12 +1,12 @@ package net.zscript.javareceiver.semanticParser; -import static org.assertj.core.api.Assertions.assertThat; -import static org.junit.jupiter.params.provider.Arguments.of; - import java.io.IOException; import java.util.List; import java.util.stream.Stream; +import static org.assertj.core.api.Assertions.assertThat; +import static org.junit.jupiter.params.provider.Arguments.of; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; @@ -19,9 +19,9 @@ import net.zscript.javareceiver.modules.core.ZscriptCoreModule; import net.zscript.javareceiver.semanticParser.SemanticAction.ActionType; import net.zscript.javareceiver.semanticParser.SemanticParser.State; -import net.zscript.javareceiver.tokenizer.TokenBuffer; -import net.zscript.javareceiver.tokenizer.TokenRingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.TokenBuffer; +import net.zscript.tokenizer.TokenRingBuffer; +import net.zscript.tokenizer.Tokenizer; class LockEchoParserTest { private final TokenBuffer buffer = TokenRingBuffer.createBufferWithCapacity(256); diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/ParserActionTester.java b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/ParserActionTester.java index 2f98e371b..9fe59fc41 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/ParserActionTester.java +++ b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/ParserActionTester.java @@ -1,25 +1,25 @@ package net.zscript.javareceiver.semanticParser; -import static org.assertj.core.api.Assertions.assertThat; - import java.util.List; +import static org.assertj.core.api.Assertions.assertThat; + import net.zscript.javareceiver.core.OutStream; import net.zscript.javareceiver.core.Zscript; import net.zscript.javareceiver.semanticParser.SemanticAction.ActionType; import net.zscript.javareceiver.semanticParser.SemanticParser.State; -import net.zscript.javareceiver.tokenizer.TokenBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.TokenBuffer; +import net.zscript.tokenizer.Tokenizer; /** * Testing utility methods. */ class ParserActionTester { - private final Zscript zscript; - private final TokenBuffer buffer; - private final Tokenizer tokenizer; - private final SemanticParser parser; - private final OutStream outStream; + private final Zscript zscript; + private final TokenBuffer buffer; + private final Tokenizer tokenizer; + private final SemanticParser parser; + private final OutStream outStream; public ParserActionTester(Zscript zscript, TokenBuffer buffer, Tokenizer tokenizer, SemanticParser parser, OutStream outStream) { this.zscript = zscript; @@ -85,4 +85,4 @@ void parseSnippet(final String text, ActionType expectedActionType, State endSta } assertThat(outStream.toString()).isEqualTo(output); } -} \ No newline at end of file +} diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserAddressingTest.java b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserAddressingTest.java index b34d31217..901aaed58 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserAddressingTest.java +++ b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserAddressingTest.java @@ -1,23 +1,23 @@ package net.zscript.javareceiver.semanticParser; +import java.io.IOException; +import java.util.List; + import static net.zscript.javareceiver.semanticParser.SemanticAction.ActionType.END_SEQUENCE; import static net.zscript.javareceiver.semanticParser.SemanticAction.ActionType.ERROR; import static net.zscript.javareceiver.semanticParser.SemanticAction.ActionType.INVOKE_ADDRESSING; import static net.zscript.javareceiver.semanticParser.SemanticAction.ActionType.WAIT_FOR_TOKENS; import static org.assertj.core.api.Assertions.assertThat; -import java.io.IOException; -import java.util.List; - import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import net.zscript.javareceiver.core.StringWriterOutStream; import net.zscript.javareceiver.core.Zscript; import net.zscript.javareceiver.modules.core.ZscriptCoreModule; -import net.zscript.javareceiver.tokenizer.TokenBuffer; -import net.zscript.javareceiver.tokenizer.TokenRingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.TokenBuffer; +import net.zscript.tokenizer.TokenRingBuffer; +import net.zscript.tokenizer.Tokenizer; public class SemanticParserAddressingTest { private final TokenBuffer buffer = TokenRingBuffer.createBufferWithCapacity(256); diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserAsyncCommandTest.java b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserAsyncCommandTest.java index 510548aab..4d742e7a9 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserAsyncCommandTest.java +++ b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserAsyncCommandTest.java @@ -1,9 +1,9 @@ package net.zscript.javareceiver.semanticParser; -import static org.assertj.core.api.Assertions.assertThat; - import java.io.IOException; +import static org.assertj.core.api.Assertions.assertThat; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -17,9 +17,9 @@ import net.zscript.javareceiver.semanticParser.ContextView.AsyncActionNotifier; import net.zscript.javareceiver.semanticParser.SemanticAction.ActionType; import net.zscript.javareceiver.semanticParser.SemanticParser.State; -import net.zscript.javareceiver.tokenizer.TokenBuffer; -import net.zscript.javareceiver.tokenizer.TokenRingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.TokenBuffer; +import net.zscript.tokenizer.TokenRingBuffer; +import net.zscript.tokenizer.Tokenizer; import net.zscript.util.OptIterator; class SemanticParserAsyncCommandTest { diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserMulticommandTest.java b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserMulticommandTest.java index 0316b4278..2ea412524 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserMulticommandTest.java +++ b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserMulticommandTest.java @@ -1,15 +1,15 @@ package net.zscript.javareceiver.semanticParser; +import java.io.IOException; +import java.util.List; +import java.util.stream.Stream; + import static net.zscript.javareceiver.semanticParser.SemanticAction.ActionType.END_SEQUENCE; import static net.zscript.javareceiver.semanticParser.SemanticAction.ActionType.RUN_FIRST_COMMAND; import static net.zscript.javareceiver.semanticParser.SemanticAction.ActionType.WAIT_FOR_TOKENS; import static org.assertj.core.api.Assertions.assertThat; import static org.junit.jupiter.params.provider.Arguments.of; -import java.io.IOException; -import java.util.List; -import java.util.stream.Stream; - import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; @@ -19,9 +19,9 @@ import net.zscript.javareceiver.core.StringWriterOutStream; import net.zscript.javareceiver.core.Zscript; import net.zscript.javareceiver.modules.core.ZscriptCoreModule; -import net.zscript.javareceiver.tokenizer.TokenBuffer; -import net.zscript.javareceiver.tokenizer.TokenRingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.TokenBuffer; +import net.zscript.tokenizer.TokenRingBuffer; +import net.zscript.tokenizer.Tokenizer; class SemanticParserMulticommandTest { private final TokenBuffer buffer = TokenRingBuffer.createBufferWithCapacity(256); diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserTest.java b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserTest.java index a36ea9a3e..9cf13e288 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserTest.java +++ b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserTest.java @@ -1,5 +1,9 @@ package net.zscript.javareceiver.semanticParser; +import java.io.IOException; +import java.util.List; +import java.util.stream.Stream; + import static net.zscript.javareceiver.semanticParser.SemanticAction.ActionType.CLOSE_PAREN; import static net.zscript.javareceiver.semanticParser.SemanticAction.ActionType.END_SEQUENCE; import static net.zscript.javareceiver.semanticParser.SemanticAction.ActionType.RUN_COMMAND; @@ -8,10 +12,6 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.junit.jupiter.params.provider.Arguments.of; -import java.io.IOException; -import java.util.List; -import java.util.stream.Stream; - import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; @@ -23,9 +23,9 @@ import net.zscript.javareceiver.modules.core.ZscriptCoreModule; import net.zscript.javareceiver.semanticParser.SemanticAction.ActionType; import net.zscript.javareceiver.semanticParser.SemanticParser.State; -import net.zscript.javareceiver.tokenizer.TokenBuffer; -import net.zscript.javareceiver.tokenizer.TokenRingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.TokenBuffer; +import net.zscript.tokenizer.TokenRingBuffer; +import net.zscript.tokenizer.Tokenizer; class SemanticParserTest { private final TokenBuffer buffer = TokenRingBuffer.createBufferWithCapacity(256); diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserTokenWaitTest.java b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserTokenWaitTest.java index 84ad0f189..734a53d0b 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserTokenWaitTest.java +++ b/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/semanticParser/SemanticParserTokenWaitTest.java @@ -1,9 +1,9 @@ package net.zscript.javareceiver.semanticParser; -import static org.assertj.core.api.Assertions.assertThat; - import java.io.IOException; +import static org.assertj.core.api.Assertions.assertThat; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -12,9 +12,9 @@ import net.zscript.javareceiver.modules.core.ZscriptCoreModule; import net.zscript.javareceiver.semanticParser.SemanticAction.ActionType; import net.zscript.javareceiver.semanticParser.SemanticParser.State; -import net.zscript.javareceiver.tokenizer.TokenBuffer; -import net.zscript.javareceiver.tokenizer.TokenRingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; +import net.zscript.tokenizer.TokenBuffer; +import net.zscript.tokenizer.TokenRingBuffer; +import net.zscript.tokenizer.Tokenizer; class SemanticParserTokenWaitTest { private final TokenBuffer buffer = TokenRingBuffer.createBufferWithCapacity(256); diff --git a/receivers/jvm/java-tokenizer/pom.xml b/receivers/jvm/java-tokenizer/pom.xml new file mode 100644 index 000000000..98cfc1a43 --- /dev/null +++ b/receivers/jvm/java-tokenizer/pom.xml @@ -0,0 +1,27 @@ + + 4.0.0 + + + net.zscript + zscript-receivers-jvm + 0.0.1-SNAPSHOT + + + java-tokenizer + Zscript Token Buffer System + + + + net.zscript + zscript-util-misc + ${project.version} + + + net.zscript + zscript-java-model-components + ${project.version} + + + diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/BlockIterator.java b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/BlockIterator.java similarity index 93% rename from receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/BlockIterator.java rename to receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/BlockIterator.java index bafc3ae2c..87c5be651 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/BlockIterator.java +++ b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/BlockIterator.java @@ -1,4 +1,4 @@ -package net.zscript.javareceiver.tokenizer; +package net.zscript.tokenizer; import java.util.Iterator; diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/ScriptSpaceBuffer.java b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/ScriptSpaceBuffer.java similarity index 98% rename from receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/ScriptSpaceBuffer.java rename to receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/ScriptSpaceBuffer.java index 296efdb87..cfa10afc6 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/ScriptSpaceBuffer.java +++ b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/ScriptSpaceBuffer.java @@ -1,4 +1,4 @@ -package net.zscript.javareceiver.tokenizer; +package net.zscript.tokenizer; import java.util.Arrays; diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenArrayBuffer.java b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenArrayBuffer.java similarity index 96% rename from receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenArrayBuffer.java rename to receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenArrayBuffer.java index 4a3422b3c..b23764dce 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenArrayBuffer.java +++ b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenArrayBuffer.java @@ -1,9 +1,12 @@ -package net.zscript.javareceiver.tokenizer; +package net.zscript.tokenizer; import java.util.Arrays; import java.util.NoSuchElementException; import java.util.Optional; +import static net.zscript.tokenizer.TokenBuffer.isMarker; +import static net.zscript.tokenizer.TokenBuffer.isSequenceEndMarker; + /** * Array based implementation of a Token Buffer - the tokens making up incoming command or response sequences are encoded and accessed here. Rules are: *
    @@ -100,7 +103,7 @@ public void continueTokenNibble(final byte nibble) { if (numeric) { throw new IllegalArgumentException("Illegal numeric field longer than 255 bytes"); } - writeNewTokenStart(TokenArrayBuffer.TOKEN_EXTENSION); + writeNewTokenStart(TOKEN_EXTENSION); } data[writeCursor] = (byte) (nibble << 4); data[writeLastLen]++; @@ -121,7 +124,7 @@ public void continueTokenByte(final byte b) { if (numeric) { throw new IllegalArgumentException("Illegal numeric field longer than 255 bytes"); } - writeNewTokenStart(TokenArrayBuffer.TOKEN_EXTENSION); + writeNewTokenStart(TOKEN_EXTENSION); } data[writeCursor] = b; moveCursor(); @@ -186,7 +189,7 @@ public boolean isTokenComplete() { @Override public void writeMarker(final byte key) { - if (!TokenBuffer.isMarker(key)) { + if (!isMarker(key)) { throw new IllegalArgumentException("invalid marker [key=0x" + Integer.toHexString(key) + "]"); } endToken(); @@ -194,14 +197,14 @@ public void writeMarker(final byte key) { moveCursor(); endToken(); - if (TokenBuffer.isSequenceEndMarker(key)) { + if (isSequenceEndMarker(key)) { flags.setSeqMarkerWritten(); } flags.setMarkerWritten(); } private void writeNewTokenStart(final byte key) { - if (TokenBuffer.isMarker(key)) { + if (isMarker(key)) { throw new IllegalArgumentException("invalid token [key=0x" + Integer.toHexString(key) + "]"); } data[writeCursor] = key; @@ -270,13 +273,13 @@ public Optional next() { } final int initialIndex = index; - if (TokenBuffer.isMarker(data[index])) { + if (isMarker(data[index])) { index = offset(index, 1); } else { do { final int tokenDataLength = Byte.toUnsignedInt(data[offset(index, 1)]); index = offset(index, tokenDataLength + 2); - } while (data[index] == TokenArrayBuffer.TOKEN_EXTENSION); + } while (data[index] == TOKEN_EXTENSION); } return Optional.of(new ArrayBufferToken(initialIndex)); @@ -355,7 +358,7 @@ private ArrayBufferToken(final int index) { if (!isInReadableArea(index)) { throw new IllegalArgumentException("index is not in readable area [index=" + index + "]"); } - if (data[index] == TokenArrayBuffer.TOKEN_EXTENSION) { + if (data[index] == TOKEN_EXTENSION) { throw new IllegalArgumentException("Tokens cannot begin with extension key"); } this.index = index; @@ -390,7 +393,7 @@ public Byte next() { public boolean hasNext() { // Copes with empty tokens which still have extensions... probably not a valid thing anyway, but still, it didn't cost anything. while (segRemaining == 0) { - if ((itIndex == writeStart) || (data[itIndex] != TokenArrayBuffer.TOKEN_EXTENSION)) { + if ((itIndex == writeStart) || (data[itIndex] != TOKEN_EXTENSION)) { return false; } segRemaining = Byte.toUnsignedInt(data[offset(itIndex, 1)]); @@ -480,7 +483,7 @@ public int getDataSize() { final int segSz = Byte.toUnsignedInt(data[offset(index, 1)]); totalSz += segSz; index = offset(index, segSz + 2); - } while (index != writeStart && data[index] == TokenArrayBuffer.TOKEN_EXTENSION); + } while (index != writeStart && data[index] == TOKEN_EXTENSION); return totalSz; } diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenBuffer.java b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenBuffer.java similarity index 99% rename from receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenBuffer.java rename to receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenBuffer.java index 7a9e70e96..b9d918075 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenBuffer.java +++ b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenBuffer.java @@ -1,4 +1,4 @@ -package net.zscript.javareceiver.tokenizer; +package net.zscript.tokenizer; import java.util.NoSuchElementException; diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenBufferFlags.java b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenBufferFlags.java similarity index 98% rename from receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenBufferFlags.java rename to receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenBufferFlags.java index d76b4bc1d..5f52a32ef 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenBufferFlags.java +++ b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenBufferFlags.java @@ -1,4 +1,4 @@ -package net.zscript.javareceiver.tokenizer; +package net.zscript.tokenizer; /** * Flags to indicate current status, acting as a communication channel between the TokenWriter and TokenReader. diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenBufferIterator.java b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenBufferIterator.java similarity index 73% rename from receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenBufferIterator.java rename to receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenBufferIterator.java index 7dbdd3195..3af076543 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenBufferIterator.java +++ b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenBufferIterator.java @@ -1,6 +1,6 @@ -package net.zscript.javareceiver.tokenizer; +package net.zscript.tokenizer; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; +import net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; import net.zscript.util.OptIterator; public interface TokenBufferIterator extends OptIterator { diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenExtendingBuffer.java b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenExtendingBuffer.java similarity index 94% rename from receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenExtendingBuffer.java rename to receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenExtendingBuffer.java index 66d3d5423..7df2ef766 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenExtendingBuffer.java +++ b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenExtendingBuffer.java @@ -1,9 +1,9 @@ -package net.zscript.javareceiver.tokenizer; - -import static java.text.MessageFormat.format; +package net.zscript.tokenizer; import java.util.Arrays; +import static java.text.MessageFormat.format; + public class TokenExtendingBuffer extends TokenArrayBuffer { public TokenExtendingBuffer() { super(20); diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenRingBuffer.java b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenRingBuffer.java similarity index 97% rename from receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenRingBuffer.java rename to receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenRingBuffer.java index e070f70a9..6a5a5c99a 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/TokenRingBuffer.java +++ b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/TokenRingBuffer.java @@ -1,4 +1,4 @@ -package net.zscript.javareceiver.tokenizer; +package net.zscript.tokenizer; import static java.text.MessageFormat.format; @@ -9,7 +9,6 @@ *
  1. All indices are incremented modulo the length of the underlying byte array.
  2. *
  3. *
- * */ public class TokenRingBuffer extends TokenArrayBuffer { /** diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/Tokenizer.java b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/Tokenizer.java similarity index 99% rename from receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/Tokenizer.java rename to receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/Tokenizer.java index e6e17c0d5..6f9341ace 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/Tokenizer.java +++ b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/Tokenizer.java @@ -1,7 +1,7 @@ -package net.zscript.javareceiver.tokenizer; +package net.zscript.tokenizer; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenWriter; import net.zscript.model.components.Zchars; +import net.zscript.tokenizer.TokenBuffer.TokenWriter; /** * General Tokenizer for handling a stream of incoming Zscript bytes. Responsibilities: diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/ZscriptExpression.java b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/ZscriptExpression.java similarity index 98% rename from receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/ZscriptExpression.java rename to receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/ZscriptExpression.java index c08e5f920..5f556efe1 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/ZscriptExpression.java +++ b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/ZscriptExpression.java @@ -1,4 +1,4 @@ -package net.zscript.javareceiver.tokenizer; +package net.zscript.tokenizer; import java.util.OptionalInt; diff --git a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/ZscriptTokenExpression.java b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/ZscriptTokenExpression.java similarity index 96% rename from receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/ZscriptTokenExpression.java rename to receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/ZscriptTokenExpression.java index 2383775f4..afb4021bb 100644 --- a/receivers/jvm/java-receiver/src/main/java/net/zscript/javareceiver/tokenizer/ZscriptTokenExpression.java +++ b/receivers/jvm/java-tokenizer/src/main/java/net/zscript/tokenizer/ZscriptTokenExpression.java @@ -1,12 +1,12 @@ -package net.zscript.javareceiver.tokenizer; +package net.zscript.tokenizer; import java.util.NoSuchElementException; import java.util.Optional; import java.util.OptionalInt; import java.util.function.Supplier; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; import net.zscript.model.components.Zchars; +import net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; import net.zscript.util.ByteString; import net.zscript.util.OptIterator; @@ -69,7 +69,7 @@ public int getBigFieldSize() { .mapToInt(ReadToken::getDataSize) .sum(); } - + @Override public ByteString getBigFieldAsByteString() { ByteString.ByteStringBuilder b = ByteString.builder(); diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/tokenizer/TokenRingBufferReaderTest.java b/receivers/jvm/java-tokenizer/src/test/java/net/zscript/tokenizer/TokenRingBufferReaderTest.java similarity index 96% rename from receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/tokenizer/TokenRingBufferReaderTest.java rename to receivers/jvm/java-tokenizer/src/test/java/net/zscript/tokenizer/TokenRingBufferReaderTest.java index a8cf11a59..092b55dad 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/tokenizer/TokenRingBufferReaderTest.java +++ b/receivers/jvm/java-tokenizer/src/test/java/net/zscript/tokenizer/TokenRingBufferReaderTest.java @@ -1,6 +1,4 @@ -package net.zscript.javareceiver.tokenizer; - -import static org.assertj.core.api.Assertions.assertThat; +package net.zscript.tokenizer; import java.io.ByteArrayOutputStream; import java.util.ArrayList; @@ -11,12 +9,14 @@ import java.util.Optional; import java.util.Random; +import static org.assertj.core.api.Assertions.assertThat; + import org.assertj.core.util.Streams; import org.junit.jupiter.api.Test; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenReader.ReadToken; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenWriter; +import net.zscript.tokenizer.TokenBuffer.TokenReader; +import net.zscript.tokenizer.TokenBuffer.TokenReader.ReadToken; +import net.zscript.tokenizer.TokenBuffer.TokenWriter; import net.zscript.util.OptIterator; class TokenRingBufferReaderTest { @@ -260,7 +260,7 @@ void shouldIterateTokenDataInContiguousChunks() { writeExtendedToken(r, 800); BlockIterator data = reader.iterator().next().get().blockIterator(); int i = 0; - for (BlockIterator iterator = data; iterator.hasNext();) { + for (BlockIterator iterator = data; iterator.hasNext(); ) { byte[] nextCont = iterator.nextContiguous(); assertThat(nextCont).containsExactly(Arrays.copyOfRange(tokens.get(0).data, i, Math.min(i + 255, 800))); i += 255; @@ -273,7 +273,7 @@ void shouldIterateTokenDataInLimtedContiguousChunks() { writeExtendedToken(r, 800); BlockIterator data = reader.iterator().next().get().blockIterator(); int i = 0; - for (BlockIterator iterator = data; iterator.hasNext();) { + for (BlockIterator iterator = data; iterator.hasNext(); ) { assertThat(iterator.nextContiguous(200)).containsExactly(Arrays.copyOfRange(tokens.get(0).data, i, Math.min(i + 200, 800))); if (iterator.hasNext()) { assertThat(iterator.nextContiguous(200)).containsExactly(Arrays.copyOfRange(tokens.get(0).data, i + 200, Math.min(i + 255, 800))); @@ -293,7 +293,7 @@ void shouldIterateTokenDataInLimtedContiguousChunksAroundEnd() { writeExtendedToken(r, 800); BlockIterator data = reader.iterator().next().get().blockIterator(); int i = 0; - for (BlockIterator iterator = data; iterator.hasNext();) { + for (BlockIterator iterator = data; iterator.hasNext(); ) { int offset = 200; if (i + initialLength + (initialLength + 254) / 255 * 2 + i / 255 * 2 < BUFSIZE && i + 200 + initialLength + (initialLength + 254) / 255 * 2 + i / 255 * 2 + 2 > BUFSIZE) { diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/tokenizer/TokenRingBufferWriterTest.java b/receivers/jvm/java-tokenizer/src/test/java/net/zscript/tokenizer/TokenRingBufferWriterTest.java similarity index 96% rename from receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/tokenizer/TokenRingBufferWriterTest.java rename to receivers/jvm/java-tokenizer/src/test/java/net/zscript/tokenizer/TokenRingBufferWriterTest.java index 2695f27d4..618c87f1d 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/tokenizer/TokenRingBufferWriterTest.java +++ b/receivers/jvm/java-tokenizer/src/test/java/net/zscript/tokenizer/TokenRingBufferWriterTest.java @@ -1,19 +1,19 @@ -package net.zscript.javareceiver.tokenizer; +package net.zscript.tokenizer; -import static net.zscript.javareceiver.tokenizer.Tokenizer.ERROR_BUFFER_OVERRUN; +import static net.zscript.tokenizer.Tokenizer.ERROR_BUFFER_OVERRUN; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatThrownBy; import org.junit.jupiter.api.Test; -import net.zscript.javareceiver.tokenizer.TokenBuffer.TokenWriter; +import net.zscript.tokenizer.TokenBuffer.TokenWriter; class TokenRingBufferWriterTest { private static final int BUFSIZE = 10; private final TokenRingBuffer buffer = TokenRingBuffer.createBufferWithCapacity(BUFSIZE); - private final TokenWriter writer = buffer.getTokenWriter(); + private final TokenWriter writer = buffer.getTokenWriter(); /** * Validates the exposed buffer state. @@ -229,7 +229,7 @@ void shouldTokenizeNonNumericFieldWithOddNibbles() { @Test void shouldTokenizeContinuedBigField() { TokenRingBuffer bigBuffer = TokenRingBuffer.createBufferWithCapacity(300); - TokenWriter writer = bigBuffer.getTokenWriter(); + TokenWriter writer = bigBuffer.getTokenWriter(); writer.startToken((byte) '+', false); for (int i = 0; i < 258; i++) { diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/tokenizer/TokenizerDeepParseTest.java b/receivers/jvm/java-tokenizer/src/test/java/net/zscript/tokenizer/TokenizerDeepParseTest.java similarity index 89% rename from receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/tokenizer/TokenizerDeepParseTest.java rename to receivers/jvm/java-tokenizer/src/test/java/net/zscript/tokenizer/TokenizerDeepParseTest.java index b4c19ed1d..f85145ae6 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/tokenizer/TokenizerDeepParseTest.java +++ b/receivers/jvm/java-tokenizer/src/test/java/net/zscript/tokenizer/TokenizerDeepParseTest.java @@ -1,13 +1,12 @@ -package net.zscript.javareceiver.tokenizer; +package net.zscript.tokenizer; -import static net.zscript.javareceiver.tokenizer.Tokenizer.NORMAL_SEQUENCE_END; -import static org.junit.jupiter.api.Assertions.fail; +import java.nio.charset.StandardCharsets; +import java.util.stream.Stream; + +import static net.zscript.tokenizer.Tokenizer.NORMAL_SEQUENCE_END; +import static org.assertj.core.api.Assertions.fail; import static org.mockito.ArgumentMatchers.anyBoolean; import static org.mockito.ArgumentMatchers.anyByte; -import static org.mockito.Mockito.clearInvocations; -import static org.mockito.Mockito.never; -import static org.mockito.Mockito.reset; -import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import org.junit.jupiter.api.BeforeEach; @@ -17,11 +16,9 @@ import org.junit.jupiter.params.provider.Arguments; import org.junit.jupiter.params.provider.MethodSource; import org.mockito.Mock; +import org.mockito.Mockito; import org.mockito.junit.jupiter.MockitoExtension; -import java.nio.charset.StandardCharsets; -import java.util.stream.Stream; - import net.zscript.model.components.Zchars; @ExtendWith(MockitoExtension.class) @@ -53,11 +50,11 @@ void setUp() { @Test void shouldMarkOverrunOnDataLostOnce() { tokenizer.dataLost(); - verify(writer).fail(Tokenizer.ERROR_BUFFER_OVERRUN); + Mockito.verify(writer).fail(Tokenizer.ERROR_BUFFER_OVERRUN); // do it again - should just record once - reset(writer); + Mockito.reset(writer); tokenizer.dataLost(); - verify(writer, never()).fail(Tokenizer.ERROR_BUFFER_OVERRUN); + Mockito.verify(writer, Mockito.never()).fail(Tokenizer.ERROR_BUFFER_OVERRUN); } @ParameterizedTest(name = "{0}: {1}") @@ -179,36 +176,36 @@ private void validateZscriptActions(String zscript, String bufferActions) { try { switch (action) { case 's': - verify(writer).startToken(arg, false); + Mockito.verify(writer).startToken(arg, false); break; case 't': - verify(writer).startToken(arg, true); + Mockito.verify(writer).startToken(arg, true); break; case 'n': - verify(writer).continueTokenNibble((byte) Character.digit((char) arg, 16)); + Mockito.verify(writer).continueTokenNibble((byte) Character.digit((char) arg, 16)); break; case 'b': - verify(writer).continueTokenByte(arg); + Mockito.verify(writer).continueTokenByte(arg); break; case 'm': - verify(writer).writeMarker(arg); + Mockito.verify(writer).writeMarker(arg); break; case 'f': - verify(writer).fail(arg); + Mockito.verify(writer).fail(arg); break; case 'a': - verify(writer).startToken(Tokenizer.ADDRESSING_FIELD_KEY, false); - verify(writer).continueTokenByte(arg); + Mockito.verify(writer).startToken(Tokenizer.ADDRESSING_FIELD_KEY, false); + Mockito.verify(writer).continueTokenByte(arg); break; case '-': - verify(writer, never()).startToken(anyByte(), anyBoolean()); - verify(writer, never()).continueTokenNibble(anyByte()); - verify(writer, never()).continueTokenByte(anyByte()); + Mockito.verify(writer, Mockito.never()).startToken(anyByte(), anyBoolean()); + Mockito.verify(writer, Mockito.never()).continueTokenNibble(anyByte()); + Mockito.verify(writer, Mockito.never()).continueTokenByte(anyByte()); break; default: fail("Unknown action! '" + action + "'"); } - clearInvocations(writer); + Mockito.clearInvocations(writer); } catch (Throwable t) { throw new AssertionError("At index " + index + " processing char " + Byte.toUnsignedInt(c), t); } diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/tokenizer/TokenizerTest.java b/receivers/jvm/java-tokenizer/src/test/java/net/zscript/tokenizer/TokenizerTest.java similarity index 94% rename from receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/tokenizer/TokenizerTest.java rename to receivers/jvm/java-tokenizer/src/test/java/net/zscript/tokenizer/TokenizerTest.java index df59b2b55..e05439ecd 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/tokenizer/TokenizerTest.java +++ b/receivers/jvm/java-tokenizer/src/test/java/net/zscript/tokenizer/TokenizerTest.java @@ -1,15 +1,12 @@ -package net.zscript.javareceiver.tokenizer; +package net.zscript.tokenizer; import java.nio.charset.StandardCharsets; import java.util.stream.Stream; -import static net.zscript.javareceiver.tokenizer.Tokenizer.NORMAL_SEQUENCE_END; -import static org.junit.jupiter.api.Assertions.fail; +import static net.zscript.tokenizer.Tokenizer.NORMAL_SEQUENCE_END; +import static org.assertj.core.api.Assertions.fail; import static org.mockito.ArgumentMatchers.anyBoolean; import static org.mockito.ArgumentMatchers.anyByte; -import static org.mockito.Mockito.clearInvocations; -import static org.mockito.Mockito.never; -import static org.mockito.Mockito.reset; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; @@ -20,6 +17,7 @@ import org.junit.jupiter.params.provider.Arguments; import org.junit.jupiter.params.provider.MethodSource; import org.mockito.Mock; +import org.mockito.Mockito; import org.mockito.junit.jupiter.MockitoExtension; import net.zscript.model.components.Zchars; @@ -55,9 +53,9 @@ void shouldMarkOverrunOnDataLostOnce() { tokenizer.dataLost(); verify(writer).fail(Tokenizer.ERROR_BUFFER_OVERRUN); // do it again - should just record once - reset(writer); + Mockito.reset(writer); tokenizer.dataLost(); - verify(writer, never()).fail(Tokenizer.ERROR_BUFFER_OVERRUN); + verify(writer, Mockito.never()).fail(Tokenizer.ERROR_BUFFER_OVERRUN); } @ParameterizedTest(name = "{0}: {1}") @@ -201,14 +199,14 @@ private void validateZscriptActions(String zscript, String bufferActions) { verify(writer).continueTokenByte(arg); break; case '-': - verify(writer, never()).startToken(anyByte(), anyBoolean()); - verify(writer, never()).continueTokenNibble(anyByte()); - verify(writer, never()).continueTokenByte(anyByte()); + verify(writer, Mockito.never()).startToken(anyByte(), anyBoolean()); + verify(writer, Mockito.never()).continueTokenNibble(anyByte()); + verify(writer, Mockito.never()).continueTokenByte(anyByte()); break; default: fail("Unknown action! '" + action + "'"); } - clearInvocations(writer); + Mockito.clearInvocations(writer); } catch (Throwable t) { throw new AssertionError("At index " + index + " processing char " + Byte.toUnsignedInt(c), t); } diff --git a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/tokenizer/ZscriptTokenExpressionTest.java b/receivers/jvm/java-tokenizer/src/test/java/net/zscript/tokenizer/ZscriptTokenExpressionTest.java similarity index 98% rename from receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/tokenizer/ZscriptTokenExpressionTest.java rename to receivers/jvm/java-tokenizer/src/test/java/net/zscript/tokenizer/ZscriptTokenExpressionTest.java index 715ab0ac9..8d0eae68b 100644 --- a/receivers/jvm/java-receiver/src/test/java/net/zscript/javareceiver/tokenizer/ZscriptTokenExpressionTest.java +++ b/receivers/jvm/java-tokenizer/src/test/java/net/zscript/tokenizer/ZscriptTokenExpressionTest.java @@ -1,4 +1,4 @@ -package net.zscript.javareceiver.tokenizer; +package net.zscript.tokenizer; import java.util.NoSuchElementException; diff --git a/receivers/jvm/pom.xml b/receivers/jvm/pom.xml index 4a232acc6..0b4ac4540 100644 --- a/receivers/jvm/pom.xml +++ b/receivers/jvm/pom.xml @@ -14,9 +14,10 @@ Zscript JVM Receiver + java-model-components java-receiver + java-tokenizer - java-model-components diff --git a/simulator/zscript-simulator-jvm/src/main/java/net/zscript/javasimulator/zcode/i2c/I2cChannel.java b/simulator/zscript-simulator-jvm/src/main/java/net/zscript/javasimulator/zcode/i2c/I2cChannel.java index b2c9a6153..84d36e605 100644 --- a/simulator/zscript-simulator-jvm/src/main/java/net/zscript/javasimulator/zcode/i2c/I2cChannel.java +++ b/simulator/zscript-simulator-jvm/src/main/java/net/zscript/javasimulator/zcode/i2c/I2cChannel.java @@ -10,9 +10,6 @@ import net.zscript.javareceiver.core.OutStream; import net.zscript.javareceiver.core.ZscriptChannel; import net.zscript.javareceiver.execution.CommandContext; -import net.zscript.javareceiver.tokenizer.TokenBuffer; -import net.zscript.javareceiver.tokenizer.TokenRingBuffer; -import net.zscript.javareceiver.tokenizer.Tokenizer; import net.zscript.javasimulator.CommunicationPacket; import net.zscript.javasimulator.CommunicationResponse; import net.zscript.javasimulator.Entity; @@ -27,54 +24,57 @@ import net.zscript.javasimulator.connections.i2c.SmBusAlertConnection; import net.zscript.javasimulator.connections.i2c.SmBusAlertPacket; import net.zscript.javasimulator.zcode.SimulatorConsumer; +import net.zscript.tokenizer.TokenBuffer; +import net.zscript.tokenizer.TokenRingBuffer; +import net.zscript.tokenizer.Tokenizer; public class I2cChannel extends ZscriptChannel implements SimulatorConsumer { private final Entity e; private final I2cAddress addr; private final Tokenizer in; private final Queue outQueue; - private int cachePos = 0; + private int cachePos = 0; public static I2cChannel build(Entity e, I2cAddress addr, int index, int size) { Queue outQueue = new ConcurrentLinkedQueue<>(); - I2cChannel channel = new I2cChannel(e, addr, TokenRingBuffer.createBufferWithCapacity(size), outQueue, new AbstractOutStream() { - private ByteArrayOutputStream stream; - - @Override - public void open() { - stream = new ByteArrayOutputStream(); - } - - @Override - public void close() { - outQueue.add(stream.toByteArray()); - e.getConnection(I2cProtocolCategory.class, index).getProtocol(I2cConnection.class).connect(SmBusAlertConnection.ALERT_ADDRESS, e); - e.getConnection(I2cProtocolCategory.class, index).sendMessage(e, new SmBusAlertPacket(true)); - stream = null; - } - - @Override - public boolean isOpen() { - return stream != null; - } - - @Override - protected void writeBytes(byte[] bytes, int count, boolean hexMode) { - if (hexMode) { - for (byte b : bytes) { - stream.write(toHexChar(b >>> 4)); - stream.write(toHexChar(b & 0xf)); - } - } else { - try { - stream.write(Arrays.copyOf(bytes, count)); - } catch (IOException e) { - e.printStackTrace(); - } - } - } - - }); + I2cChannel channel = new I2cChannel(e, addr, TokenRingBuffer.createBufferWithCapacity(size), outQueue, new AbstractOutStream() { + private ByteArrayOutputStream stream; + + @Override + public void open() { + stream = new ByteArrayOutputStream(); + } + + @Override + public void close() { + outQueue.add(stream.toByteArray()); + e.getConnection(I2cProtocolCategory.class, index).getProtocol(I2cConnection.class).connect(SmBusAlertConnection.ALERT_ADDRESS, e); + e.getConnection(I2cProtocolCategory.class, index).sendMessage(e, new SmBusAlertPacket(true)); + stream = null; + } + + @Override + public boolean isOpen() { + return stream != null; + } + + @Override + protected void writeBytes(byte[] bytes, int count, boolean hexMode) { + if (hexMode) { + for (byte b : bytes) { + stream.write(toHexChar(b >>> 4)); + stream.write(toHexChar(b & 0xf)); + } + } else { + try { + stream.write(Arrays.copyOf(bytes, count)); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + + }); e.getConnection(I2cProtocolCategory.class, index).getProtocol(I2cConnection.class).connect(addr, e); return channel; } @@ -92,7 +92,7 @@ public > CommunicationRespo if (packet.getClass() == I2cSendPacket.class) { byte[] data = ((I2cSendPacket) packet).getData(); for (byte b : data) { -// System.out.print(b + " " + (char) b + " "); + // System.out.print(b + " " + (char) b + " "); in.accept(b); } return (CommunicationResponse) I2cSendResponse.Success();