|
J avolution v3.7 (J2SE 1.5+) | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectjavolution.lang.TextFormat<T>
public abstract class TextFormat<T>
This class represents the base format for text parsing and formatting;
it supports CharSequence and Appendable
interfaces for greater flexibility.
The default format (used by valueOf(CharSequence),
toString() or toText())
can be locally scoped.
For example:
public class Complex extends RealtimeObject {
public static final LocalReference<TextFormat<Complex>> FORMAT
= new LocalReference<TextFormat<Complex>>(new TextFormat<Complex>() {
... // Default format (cartesien form).
});
public Complex valueOf(CharSequence csq) {
return FORMAT.get().parse(csq);
}
public Text toText() {
return FORMAT.get().format(this);
}
}
...
Matrix<Complex> M = ...;
LocalContext.enter();
try {
Complex.FORMAT.set(POLAR); // Current thread displays complex numbers
System.out.prinln(M); // using the polar form.
} finally {
LocalContext.exit(); // Current thread reverts to previous format.
}
For parsing/formatting of primitive types, the TypeFormat
utility class is recommended.
| Nested Class Summary | |
|---|---|
static class |
TextFormat.Cursor
This class represents a parsing cursor. |
| Constructor Summary | |
|---|---|
protected |
TextFormat()
|
| Method Summary | |
|---|---|
Text |
format(T obj)
Formats the specified object to a Text instance
(convenience method). |
abstract java.lang.Appendable |
format(T obj,
java.lang.Appendable dest)
Formats the specified object into an Appendable |
T |
parse(java.lang.CharSequence csq)
Parses a whole character sequence from the beginning to produce an object (convenience method). |
abstract T |
parse(java.lang.CharSequence csq,
TextFormat.Cursor cursor)
Parses a portion of the specified CharSequence from the
specified position to produce an object. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
protected TextFormat()
| Method Detail |
|---|
public abstract java.lang.Appendable format(T obj,
java.lang.Appendable dest)
throws java.io.IOException
Appendable
obj - the object to format.dest - the appendable destination.
Appendable.
java.io.IOException - if an I/O exception occurs.
public abstract T parse(java.lang.CharSequence csq,
TextFormat.Cursor cursor)
CharSequence from the
specified position to produce an object. If parsing succeeds, then the
index of the cursor argument is updated to the index after
the last character used.
csq - the CharSequence to parse.cursor - the cursor holding the current parsing index.
java.lang.RuntimeException - if any problem occurs while parsing the
specified character sequence (e.g. illegal syntax).public final Text format(T obj)
Text instance
(convenience method).
obj - the object being formated.
public final T parse(java.lang.CharSequence csq)
csq - the whole character sequence to parse.
java.lang.IllegalArgumentException - if the specified character sequence
cannot be fully parsed.
|
J avolution v3.7 (J2SE 1.5+) | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||