@@ -6,7 +6,7 @@ import java.math.BigInteger
66 * Base interface for all symbol types that can encode/decode values.
77 * Symbols represent different character sets or value ranges (e.g., letters, numbers, bytes).
88 * Each symbol knows its size (number of possible values) and how to convert between
9- * integer representations and actual values (characters, strings, or integers) .
9+ * numeric representations and byte arrays .
1010 */
1111interface Symbol
1212{
@@ -17,20 +17,20 @@ interface Symbol
1717 fun size (): Int
1818
1919 /* *
20- * Decodes an input value (Char, String, or Int) to its numeric representation.
21- * For example, CallLetterNumber decodes 'A' to 0, 'B' to 1, etc.
20+ * Decodes a ByteArray to its numeric representation.
21+ * For example, CallLetterNumber decodes "A".toByteArray() to 0, "B".toByteArray() to 1, etc.
2222 *
23- * @param encodedValue Can be Char, String, or Int depending on the symbol
24- * @return The decoded integer value
23+ * @param encodedValue ByteArray containing the encoded data
24+ * @return The decoded numeric value as BigInteger
2525 */
2626 fun decode (encodedValue : ByteArray ): BigInteger
2727
2828 /* *
29- * Encodes a numeric value to its symbol representation.
30- * For example, CallLetterNumber encodes 0 to 'A' , 1 to 'B' , etc.
29+ * Encodes a numeric value to its byte array representation.
30+ * For example, CallLetterNumber encodes 0 to "A".toByteArray() , 1 to "B".toByteArray() , etc.
3131 *
32- * @param numericValue The integer to encode
33- * @return Can be Char, String, or Int depending on the symbol
32+ * @param numericValue The numeric value to encode as BigInteger
33+ * @return ByteArray containing the encoded data
3434 */
3535 fun encode (numericValue : BigInteger ): ByteArray
3636}
0 commit comments