@Generated(value="org.immutables.processor.ProxyProcessor") public final class ImmutableJoin<L,R,D> extends Join<L,R,D>
Join.
Use the builder to create immutable instances:
ImmutableJoin.builder().
| Modifier and Type | Class and Description |
|---|---|
static class |
ImmutableJoin.Builder<L,R,D>
Builds instances of type
ImmutableJoin. |
Join.WithDestination<L,R,D>, Join.WithLeft<L>, Join.WithSources<L,R>| Modifier and Type | Method and Description |
|---|---|
protected BiFunction<L,R,State<D>> |
action() |
static <L,R,D> ImmutableJoin.Builder<L,R,D> |
builder()
Creates a builder for
ImmutableJoin. |
static <L,R,D> ImmutableJoin<L,R,D> |
copyOf(Join<L,R,D> instance)
Creates an immutable copy of a
Join value. |
StateID<D> |
destination() |
boolean |
equals(Object another)
This instance is equal to all instances of
ImmutableJoin that have equal attribute values. |
int |
hashCode()
Computes a hash code from attributes:
left, right, destination, action, transitionLabel. |
StateID<L> |
left() |
StateID<R> |
right() |
Set<StateID<?>> |
sources()
Returns a lazily initialized value of the
sources attribute. |
String |
toString()
Prints the immutable value
Join with attribute values. |
String |
transitionLabel() |
ImmutableJoin<L,R,D> |
withAction(BiFunction<L,R,State<D>> value)
Copy the current immutable object by setting a value for the
action attribute. |
ImmutableJoin<L,R,D> |
withDestination(StateID<D> value)
Copy the current immutable object by setting a value for the
destination attribute. |
ImmutableJoin<L,R,D> |
withLeft(StateID<L> value)
Copy the current immutable object by setting a value for the
left attribute. |
ImmutableJoin<L,R,D> |
withRight(StateID<R> value)
Copy the current immutable object by setting a value for the
right attribute. |
ImmutableJoin<L,R,D> |
withTransitionLabel(String value)
Copy the current immutable object by setting a value for the
transitionLabel attribute. |
clone, finalize, getClass, notify, notifyAll, wait, wait, waitasLabelpublic StateID<D> destination()
destination in interface Transition<D>destination in class Join<L,R,D>destination attributeprotected BiFunction<L,R,State<D>> action()
public String transitionLabel()
transitionLabel in interface HasLabeltransitionLabel in class Join<L,R,D>transitionLabel attributepublic final ImmutableJoin<L,R,D> withLeft(StateID<L> value)
left attribute.
A shallow reference equality check is used to prevent copying of the same value by returning this.value - A new value for leftthis objectpublic final ImmutableJoin<L,R,D> withRight(StateID<R> value)
right attribute.
A shallow reference equality check is used to prevent copying of the same value by returning this.value - A new value for rightthis objectpublic final ImmutableJoin<L,R,D> withDestination(StateID<D> value)
destination attribute.
A shallow reference equality check is used to prevent copying of the same value by returning this.value - A new value for destinationthis objectpublic final ImmutableJoin<L,R,D> withAction(BiFunction<L,R,State<D>> value)
action attribute.
A shallow reference equality check is used to prevent copying of the same value by returning this.value - A new value for actionthis objectpublic final ImmutableJoin<L,R,D> withTransitionLabel(String value)
transitionLabel attribute.
An equals check used to prevent copying of the same value by returning this.value - A new value for transitionLabelthis objectpublic boolean equals(Object another)
ImmutableJoin that have equal attribute values.public int hashCode()
left, right, destination, action, transitionLabel.public String toString()
Join with attribute values.public Set<StateID<?>> sources()
Returns a lazily initialized value of the sources attribute.
Initialized once and only once and stored for subsequent access with proper synchronization.
In case of any exception or error thrown by the lazy value initializer,
the result will not be memoised (i.e. remembered) and on next call computation
will be attempted again.
public static <L,R,D> ImmutableJoin<L,R,D> copyOf(Join<L,R,D> instance)
Join value.
Uses accessors to get values to initialize the new immutable instance.
If an instance is already immutable, it is returned as is.L - generic parameter LR - generic parameter RD - generic parameter Dinstance - The instance to copypublic static <L,R,D> ImmutableJoin.Builder<L,R,D> builder()
ImmutableJoin.
ImmutableJoin.<L, R, D>builder()
.left(de.flapdoodle.reverse.StateID<L>) // required left
.right(de.flapdoodle.reverse.StateID<R>) // required right
.destination(de.flapdoodle.reverse.StateID<D>) // required destination
.action(function.BiFunction<L, R, de.flapdoodle.reverse.State<D>>) // required action
.transitionLabel(String) // optional transitionLabel
.build();
L - generic parameter LR - generic parameter RD - generic parameter DCopyright © 2023. All rights reserved.