ec.util
Class Code
- java.lang.Object
-
- ec.util.Code
-
public class Code extends java.lang.ObjectCode provides some simple wrapper functions for encoding and decoding basic data types for storage in a pseudo-Java source code strings format. This differs from just "printing" them to string in that the actual precision of the object is maintained. Code attempts to keep the representations as "Java-like" as possible -- the exceptions being primarily floats and doubles, which are encoded as ints and longs. Encoding of objects and arrays is not supported. You'll have to handle that yourself. Strings are supported.Everything is case-SENSITIVE. Here's the breakdown.
Type Format boolean true or false (old style, case sensitive) or T or F (new style, case sensitive) byte bbyte| short sshort| int iint| long llong| float ffloatConvertedToIntForStorage|humanReadableFloat| or (only for reading in) f|humanReadableFloat| float ddoubleConvertedToLongForStorage|humanReadableDouble| or (only for reading in) d|humanReadableDouble| char standard Java char, except that the only valid escape sequences are: \0 \t \n \b \' \" \ u unicodeHex string standard Java string with \ u ...\ u Unicode escapes, except that the only other valid escape sequences are: \0 \t \n \b \' \"
-
-
Constructor Summary
Constructors Constructor and Description Code()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static DecodeReturncheckPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, then trims the line and checks the preamble.static voiddecode(DecodeReturn d)Decodes the next item out of a DecodeReturn and modifies the DecodeReturn to hold the results.static java.lang.Stringencode(boolean b)Encodes a boolean.static java.lang.Stringencode(byte b)Encodes a byte.static java.lang.Stringencode(char c)Encodes a character.static java.lang.Stringencode(double d)Encodes a double.static java.lang.Stringencode(float f)Encodes a float.static java.lang.Stringencode(int i)Encodes an int.static java.lang.Stringencode(long l)Encodes a long.static java.lang.Stringencode(short s)Encodes a short.static java.lang.Stringencode(java.lang.String s)Encodes a String.static booleanreadBooleanWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a boolean value ("true" or "false") if there is one, and returns it.static bytereadByteWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a byte if there is one, and returns it.static charreadCharacterWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a character if there is one, and returns it.static doublereadDoubleWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a double if there is one, and returns it.static floatreadFloatWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a float if there is one, and returns it.static intreadIntegerWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in an integer if there is one, and returns it.static longreadLongWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a long if there is one, and returns it.static shortreadShortWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a short if there is one, and returns it.static java.lang.StringreadStringWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a string if there is one, and returns it.
-
-
-
Method Detail
-
encode
public static java.lang.String encode(boolean b)
Encodes a boolean.
-
encode
public static java.lang.String encode(byte b)
Encodes a byte.
-
encode
public static java.lang.String encode(char c)
Encodes a character.
-
encode
public static java.lang.String encode(short s)
Encodes a short.
-
encode
public static java.lang.String encode(int i)
Encodes an int.
-
encode
public static java.lang.String encode(long l)
Encodes a long.
-
encode
public static java.lang.String encode(float f)
Encodes a float.
-
encode
public static java.lang.String encode(double d)
Encodes a double.
-
encode
public static java.lang.String encode(java.lang.String s)
Encodes a String.
-
decode
public static void decode(DecodeReturn d)
Decodes the next item out of a DecodeReturn and modifies the DecodeReturn to hold the results. See DecodeReturn for more explanations about how to interpret the results.
-
checkPreamble
public static DecodeReturn checkPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)
Finds the next nonblank line, then trims the line and checks the preamble. Returns a DecodeReturn on the line if successful, else posts a fatal error. Sets the DecodeReturn's line number. The DecodeReturn has not yet been decoded. You'll need to do that with Code.decode(...)
-
readStringWithPreamble
public static java.lang.String readStringWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a string if there is one, and returns it. Generates an error otherwise.
-
readCharacterWithPreamble
public static char readCharacterWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a character if there is one, and returns it. Generates an error otherwise.
-
readByteWithPreamble
public static byte readByteWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a byte if there is one, and returns it. Generates an error otherwise.
-
readShortWithPreamble
public static short readShortWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a short if there is one, and returns it. Generates an error otherwise.
-
readLongWithPreamble
public static long readLongWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a long if there is one, and returns it. Generates an error otherwise.
-
readIntegerWithPreamble
public static int readIntegerWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in an integer if there is one, and returns it. Generates an error otherwise.
-
readFloatWithPreamble
public static float readFloatWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a float if there is one, and returns it. Generates an error otherwise.
-
readDoubleWithPreamble
public static double readDoubleWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a double if there is one, and returns it. Generates an error otherwise.
-
readBooleanWithPreamble
public static boolean readBooleanWithPreamble(java.lang.String preamble, EvolutionState state, java.io.LineNumberReader reader)Finds the next nonblank line, skips past an expected preamble, and reads in a boolean value ("true" or "false") if there is one, and returns it. Generates an error otherwise.
-
-
DMelt 3.0 © DataMelt by jWork.ORG