StateT
- The type of state being described.@Experimental(value=STATE) public interface StateSpec<StateT extends State> extends java.io.Serializable
Modifier and Type | Interface and Description |
---|---|
static interface |
StateSpec.Cases<ResultT>
Cases for doing a "switch" on the type of
StateSpec . |
Modifier and Type | Method and Description |
---|---|
StateT |
bind(java.lang.String id,
StateBinder binder)
For internal use only; no backwards-compatibility guarantees.
|
void |
finishSpecifying()
For internal use only; no backwards-compatibility guarantees.
|
<ResultT> ResultT |
match(StateSpec.Cases<ResultT> cases)
For internal use only; no backwards-compatibility guarantees.
|
void |
offerCoders(Coder[] coders)
For internal use only; no backwards-compatibility guarantees.
|
@Internal StateT bind(java.lang.String id, StateBinder binder)
Use the binder
to create an instance of StateT
appropriate for this address.
@Internal <ResultT> ResultT match(StateSpec.Cases<ResultT> cases)
Perform case analysis on this StateSpec
using the provided StateSpec.Cases
.
@Internal void offerCoders(Coder[] coders)
Given {code coders} are inferred from type arguments defined for this class. Coders which are already set should take precedence over offered coders.
coders
- Array of coders indexed by the type arguments order. Entries might be null if the
coder could not be inferred.