ProtocolPacketAbstraction

Companion
class
class Object
trait Matchable
class Any

Type members

Classlikes

case
class EmptyPartiallyApplied[F[_], WorldView]()

Value members

Concrete methods

def apply[F[_], SBPackets <: Tuple, CBPackets <: Tuple, Packet, WorldView](_abstraction: PacketAbstraction[Packet, WorldView, F[List[WritablePacketIn[SBPackets]]]]): ProtocolPacketAbstraction[F, SBPackets, CBPackets, Packet, WorldView]

Define an abstraction of packets in a protocol.

Define an abstraction of packets in a protocol.

def effectful[F[_] : Functor, SBPackets <: Tuple, CBPackets <: Tuple, Packet, WorldView, U](abstraction: PacketAbstraction[Packet, WorldView, F[U]]): ProtocolPacketAbstraction[F, SBPackets, CBPackets, Packet, WorldView]

Define an abstraction which causes some side-effect on packet receipt.

Define an abstraction which causes some side-effect on packet receipt.

def empty[F[_], WorldView]: EmptyPartiallyApplied[F, WorldView]

Define an abstraction which abstracts no packet in a protocol.

Define an abstraction which abstracts no packet in a protocol.

def pure[F[_] : Applicative, SBPackets <: Tuple, CBPackets <: Tuple, Packet, WorldView](abstraction: PacketAbstraction[Packet, WorldView, List[WritablePacketIn[SBPackets]]]): ProtocolPacketAbstraction[F, SBPackets, CBPackets, Packet, WorldView]

Define an abstraction which sends back peer-bound acknowledgements without any other side-effect.

Define an abstraction which sends back peer-bound acknowledgements without any other side-effect.

def silent[F[_] : Applicative, SBPackets <: Tuple, CBPackets <: Tuple, Packet, WorldView](abstraction: PacketAbstraction[Packet, WorldView, Unit]): ProtocolPacketAbstraction[F, SBPackets, CBPackets, Packet, WorldView]

Define an abstraction which does not send back peer-bound acknowledgements.

Define an abstraction which does not send back peer-bound acknowledgements.