Package com.offbynull.coroutines.user
User-level classes for coroutines. The entry-point of your coroutine should be a class that implements
Coroutine
. To run your coroutine, use CoroutineRunner
.
A simple example of a coroutine:
import com.offbynull.coroutines.user.Continuation; import com.offbynull.coroutines.user.Coroutine; public class SimpleTest implements Coroutine { public void run(Continuation c) { System.out.println("started"); for (int i = 0; i < 10; i++) { echo(c, i); } } private void echo(Continuation c, int x) { System.out.println(x); c.suspend(); } }
-
Interface Summary Interface Description Coroutine Interface to identify a coroutine.CoroutineReader.CoroutineDeserializer Coroutine deserializer.CoroutineWriter.CoroutineSerializer Coroutine serializer.SerializedState.FrameModifier Frame modifier. -
Class Summary Class Description Continuation This class is used to store and restore the execution state.CoroutineReader Reads in (deserializes) the state of aCoroutineRunner
object.CoroutineReader.DefaultCoroutineDeserializer Default implementation ofCoroutineReader.CoroutineDeserializer
(uses Java's built-in serialization mechanism).CoroutineRunner Used to execute aCoroutine
.CoroutineWriter Writes out (serializes) the current state of aCoroutineRunner
object.CoroutineWriter.DefaultCoroutineSerializer Default implementation ofCoroutineWriter.CoroutineSerializer
(uses Java's built-in serialization mechanism).LockState Do not use -- for internal use only.MethodState Do not use -- for internal use only.SerializationUtils SerializationUtils.FrameKey SerializationUtils.FrameUpdatePointKey SerializationUtils.FrameUpdatePointValue SerializedState CoroutineRunner
's state translated for serialization.SerializedState.Data Data bundle.SerializedState.Frame MethodState
's andLockState
's state translated for serialization.SerializedState.FrameInterceptPoint Frame intercept point.SerializedState.FrameUpdatePoint Frame update point.SerializedState.VersionedFrame Collection ofSerializedState.Frame
s that are for different versions of the same method and continuation point combination. -
Exception Summary Exception Description CoroutineException Exception that indicates that a problem occurred during the execution of a coroutine.