sisc.data
Class SchemeString
java.lang.Object
sisc.util.Util
sisc.data.Expression
sisc.data.Value
sisc.data.SchemeString
- All Implemented Interfaces:
- java.io.Externalizable, java.io.Serializable, Immediate, ExpressionVisitee, Version
- Direct Known Subclasses:
- ImmutableString
public class SchemeString
- extends Value
- See Also:
- Serialized Form
Fields inherited from class sisc.util.Util |
BACKQUOTE, BEGIN, bundles, caseSensitive, EMPTYLIST, EMPTYVEC, EOF, ERRORK, EVAL, EXPSC, EXPTOP, FALSE, FCONT, FIVE, JEXCEPTION, LAMBDA, LOCATION, maxFloatPrecision, MESSAGE, minFloatPrecision, NAME, OTHER, PARENT, permitInterrupts, QUOTE, QUOTESYM, REPORT, SETBANG, SISC, SISC_SPECIFIC, SISCB, SOURCE_COLUMN, SOURCE_FILE, SOURCE_LINE, SYMENV, THIS, TOPLEVEL, TRUE, UNQUOTE, UNQUOTE_SPLICING, VOID, ZV |
Methods inherited from class sisc.data.Expression |
deserializeAnnotations, getAnnotation, getAnnotation, getAnnotationKeys, getAnnotations, getName, readExternal, readResolve, serializeAnnotations, setAnnotation, setAnnotation, setName, visit, visitAnnotations, writeExternal |
Methods inherited from class sisc.util.Util |
annotated, annotatedAppEval, append, argCheck, argsToSymbols, assq, bininport, bininstream, binoutport, binoutstream, box, character, charinport, charinreader, charoutport, charoutwriter, charsetFromString, chr, cont, currentClassLoader, env, error, error, error, error, error, error, error, expr, getDefaultCharacterSet, immutablePair, immutableVector, inport, javaExceptionToString, javaWrap, justify, length, liMessage, liMessage, liMessage, liMessage, liMessage, liMessage, liMessage, list, list, list, list, list, makeURL, mapcar, memq, nlib, num, outport, pair, pairToExpressions, pairToExpVect, pairToValues, proc, read, registerBundle, reverse, reverseInPlace, simpleErrorToString, sourceAnnotations, str, string, sym, symbol, symval, truePair, truth, truth, typeError, typeError, updateName, url, url, url, valArrayToList, valArrayToList, valArrayToVec, vec, warn, warn, warn |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
compactRepresentation
public static boolean compactRepresentation
SchemeString
public SchemeString()
SchemeString
public SchemeString(java.lang.String s)
SchemeString
public SchemeString(char[] data)
asString
public java.lang.String asString()
length
public int length()
charAt
public char charAt(int index)
valueEqual
public boolean valueEqual(Value v)
- Description copied from class:
Value
- Compares this value to another for semantic equality. Used to
implement Scheme's 'equal?'. Subclasses must test for
pointer equality as well as semantic equality, so that infinite loops
on recursive structures are less likely.
- Overrides:
valueEqual
in class Value
- Parameters:
v
- the other Value
valueHashCode
public int valueHashCode()
- Description copied from class:
Value
- a hashCode function consistent with valueEqual
- Overrides:
valueHashCode
in class Value
- Returns:
- hash code
appendTo
public void appendTo(java.lang.StringBuffer buf)
copy
public SchemeString copy()
substring
public SchemeString substring(int from,
int to)
set
public void set(int k,
char c)
set
public void set(java.lang.String s)
set
public void set(char[] ca)
readFromReader
public int readFromReader(java.io.Reader r,
int off,
int len)
throws java.io.IOException
- Throws:
java.io.IOException
writeToWriter
public void writeToWriter(java.io.Writer w,
int off,
int len)
throws java.io.IOException
- Throws:
java.io.IOException
display
public void display(ValueWriter w)
throws java.io.IOException
- Specified by:
display
in class Value
- Throws:
java.io.IOException
write
public void write(ValueWriter w)
throws java.io.IOException
- Overrides:
write
in class Value
- Throws:
java.io.IOException
toString
public java.lang.String toString()
- Overrides:
toString
in class Value
serialize
public void serialize(Serializer s)
throws java.io.IOException
- Description copied from class:
Expression
- All Expressions must implement a default (no-argument) constructor.
Those that wish to be serialized to a heap must implement both this
and the deserialize method. The Expression may use any method of
the Serializer, which implements java.io.DataOutput
to write its state.
- Overrides:
serialize
in class Expression
- Parameters:
s
- the Serializer
- Throws:
java.io.IOException
deserialize
public void deserialize(Deserializer s)
throws java.io.IOException
- Description copied from class:
Expression
- All Expressions must implement a default (no-argument) constructor.
Those that wish to b serialized to a heap must implement both this
and the serialize method. The Expression may use any method of the
DataInput stream and the Deserializer serialization context
to read its state.
- Overrides:
deserialize
in class Expression
- Parameters:
s
- the Deserializer
- Throws:
java.io.IOException