java.lang.Object
java.lang.Record
io.jenetics.ext.grammar.Cfg.Terminal<T>
- Type Parameters:
T
- the terminal symbol value type
- All Implemented Interfaces:
Cfg.Symbol<T>
Represents a terminal symbols of the grammar (
T
).-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionfinal boolean
Indicates whether some other object is "equal to" this one.final int
hashCode()
Returns a hash code value for this object.name()
Returns the value of thename
record component.static Cfg.Terminal<String>
Return a new terminal symbol where the name of the symbol is equal to its value.final String
toString()
Returns a string representation of this record class.value()
Returns the value of thevalue
record component.
-
Constructor Details
-
Terminal
Creates an instance of aTerminal
record class.- Parameters:
name
- the value for thename
record componentvalue
- the value for thevalue
record component
-
-
Method Details
-
of
Return a new terminal symbol where the name of the symbol is equal to its value.- Parameters:
name
- the name (and value) of the terminal symbol- Returns:
- a new terminal symbol with the given
name
- Throws:
IllegalArgumentException
- if the given terminalname
is empty
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object)
. -
name
Returns the value of thename
record component.- Specified by:
name
in interfaceCfg.Symbol<T>
- Returns:
- the value of the
name
record component
-
value
Returns the value of thevalue
record component.- Returns:
- the value of the
value
record component
-