Class PrimitiveEncoder
java.lang.Object
dev.toonformat.jtoon.encoder.PrimitiveEncoder
Encodes primitive values and object keys for TOON format.
Delegates validation to StringValidator, escaping to StringEscaper,
and header formatting to HeaderFormatter.
-
Method Summary
Modifier and TypeMethodDescriptionstatic StringEncodes an object key, quoting if necessary.static StringencodePrimitive(tools.jackson.databind.JsonNode value, String delimiter) Encodes a primitive JsonNode value.static StringencodeStringLiteral(String value, String delimiter) Encodes a string literal, quoting if necessary.static StringformatHeader(int length, String key, List<String> fields, String delimiter, boolean lengthMarker) Formats a header for arrays and tables.static StringjoinEncodedValues(List<tools.jackson.databind.JsonNode> values, String delimiter) Joins encoded primitive values with the specified delimiter.
-
Method Details
-
encodePrimitive
-
encodeStringLiteral
Encodes a string literal, quoting if necessary. Delegates validation to StringValidator and escaping to StringEscaper.- Parameters:
value- the string value to encodedelimiter- the delimiter to use (for validation)- Returns:
- the encoded string, quoted if necessary
-
encodeKey
-
joinEncodedValues
public static String joinEncodedValues(List<tools.jackson.databind.JsonNode> values, String delimiter) Joins encoded primitive values with the specified delimiter.- Parameters:
values- the list of primitive values to joindelimiter- the delimiter to use between values- Returns:
- the joined string of encoded values
-
formatHeader
public static String formatHeader(int length, String key, List<String> fields, String delimiter, boolean lengthMarker) Formats a header for arrays and tables. Delegates to HeaderFormatter for implementation.- Parameters:
length- Array lengthkey- Optional key prefixfields- Optional field names for tabular formatdelimiter- The delimiter being usedlengthMarker- Whether to include # marker before length- Returns:
- Formatted header string
-