public interface LabelFactory
LabelFactory
object acts as a factory for creating
objects of class Label
, or some descendant class.
It can also make Labels from Strings, optionally with options.Modifier and Type | Method and Description |
---|---|
Label |
newLabel(Label oldLabel)
Create a new
Label , where the label is formed from
the Label object passed in. |
Label |
newLabel(java.lang.String labelStr)
Make a new label with this
String as the
value . |
Label |
newLabel(java.lang.String labelStr,
int options)
Make a new label with this
String as the value, and
the type determined in an implementation-dependent way from the
options value. |
Label |
newLabelFromString(java.lang.String encodedLabelStr)
Make a new label.
|
Label newLabel(java.lang.String labelStr)
String
as the
value
.
Any other fields of the label would normally be null
.labelStr
- The String that will be used for valueLabel newLabel(java.lang.String labelStr, int options)
String
as the value, and
the type determined in an implementation-dependent way from the
options value.labelStr
- The String that will be used for valueoptions
- May determine what kind of label is createdLabel newLabelFromString(java.lang.String encodedLabelStr)
encodedLabelStr
- The String that will be used for labelling the
object (by decoding it into parts)Label newLabel(Label oldLabel)
Label
, where the label is formed from
the Label
object passed in. The new Label is
guaranteed to at least copy the value()
of the
source label (if non-null); it may also copy other components
(this is implementation-specific). However, if oldLabel is of
the same type as is produced by the factory, then the whole
label should be cloned, so that the returnedLabel.equals(oldLabel).
Implementation note: That last sentence isn't true of all
current implementations (e.g., WordTag), but we should make it
so that it is true!oldLabel
- The Label that the new label is being created from