@Value.Immutable public abstract class Join<L,R,D> extends Object implements Transition<D>, HasLabel
| Modifier and Type | Class and Description |
|---|---|
static class |
Join.WithDestination<L,R,D> |
static class |
Join.WithLeft<L> |
static class |
Join.WithSources<L,R> |
| Constructor and Description |
|---|
Join() |
| Modifier and Type | Method and Description |
|---|---|
protected abstract BiFunction<L,R,State<D>> |
action() |
abstract StateID<D> |
destination() |
static <L> Join.WithLeft<L> |
given(Class<L> sourceType) |
static <L> Join.WithLeft<L> |
given(StateID<L> left) |
abstract StateID<L> |
left() |
static <L,R,D> ImmutableJoin<L,R,D> |
of(StateID<L> left,
StateID<R> right,
StateID<D> dest,
BiFunction<L,R,State<D>> action) |
State<D> |
result(StateLookup lookup) |
abstract StateID<R> |
right() |
Set<StateID<?>> |
sources() |
String |
transitionLabel() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitasLabelpublic abstract StateID<D> destination()
destination in interface Transition<D>protected abstract BiFunction<L,R,State<D>> action()
@Value.Default public String transitionLabel()
transitionLabel in interface HasLabel@Value.Lazy public Set<StateID<?>> sources()
sources in interface Transition<D>@Value.Auxiliary public State<D> result(StateLookup lookup)
result in interface Transition<D>public static <L,R,D> ImmutableJoin<L,R,D> of(StateID<L> left, StateID<R> right, StateID<D> dest, BiFunction<L,R,State<D>> action)
public static <L> Join.WithLeft<L> given(StateID<L> left)
public static <L> Join.WithLeft<L> given(Class<L> sourceType)
Copyright © 2023. All rights reserved.