Package

io.kagera.api

colored

Permalink

package colored

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. colored
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type Arc = WLDiEdge[Node]

    Permalink

    Type alias for the edge type of the scalax.collection.Graph backing the petri net.

  2. type ColoredPetriNet = PetriNet[Place[_], Transition[_, _, _]]

    Permalink

    Type alias for a colored petri net.

  3. implicit class ColoredPetriNetAdditions extends AnyRef

    Permalink
  4. trait ColoredTokenGame extends TokenGame[Place[_], Transition[_, _, _], Marking]

    Permalink
  5. sealed trait ExceptionStrategy extends AnyRef

    Permalink
  6. type ExecutablePetriNet[S] = ColoredPetriNet with ColoredTokenGame

    Permalink

    TODO

    TODO

    Incorporate the upper bounds of type parameters into this type

    Place color: C Transition input: I Transition output: E

    That way we can define different types of Petri nets:

    Uncolored petri nets, where C is Unit Non interactive nets, Where I is Unit Nets without State & Event sourcing, Where S & E are Unit

  7. implicit class IterableToMarking extends AnyRef

    Permalink
  8. type MarkedPlace[Color] = (Place[Color], MultiSet[Color])

    Permalink

    Type alias for a single marked place, meaning a place containing tokens.

  9. type Marking = HMap[Place, MultiSet]

    Permalink

    Type alias for a marking.

  10. implicit class MarkingAdditions extends AnyRef

    Permalink

    Some convenience method additions to work with Markings.

  11. implicit class MultiSetToMarking extends AnyRef

    Permalink
  12. type Node = Either[Place[_], Transition[_, _, _]]

    Permalink

    Type alias for the node type of the scalax.collection.Graph backing the petri net.

  13. trait PTEdge[T] extends AnyRef

    Permalink

    An edge from a place to a transition.

  14. class PTEdgeImpl[T] extends PTEdge[T]

    Permalink
  15. trait Place[Color] extends AnyRef

    Permalink

    A Place in a colored petri net.

  16. case class PlaceImpl[C](id: Long, label: String) extends Place[C] with Product with Serializable

    Permalink
  17. trait Transition[Input, Output, State] extends AnyRef

    Permalink

    A transition in a Colored Petri Net

    A transition in a Colored Petri Net

    Input

    The input type of the transition, the type of value that is required as input

    Output

    The output type of the transition, the type of value that this transition 'emits' or 'produces'

    State

    The type of state the transition closes over.

  18. type TransitionExceptionHandler = (Throwable, Int) ⇒ ExceptionStrategy

    Permalink

    An exception handler function associated with a transition.

  19. type TransitionFunction[Input, Output, State] = (Marking, State, Input) ⇒ Task[(Marking, Output)]

    Permalink

    An (asynchronous) function associated with a transition

Value Members

  1. object ExceptionStrategy

    Permalink
  2. object Marking

    Permalink
  3. object Place

    Permalink
  4. package dsl

    Permalink

    TODO:

    TODO:

    This is not much of a DSL yet.

    Insight:

    Since each transition is different in what kind of in/out places & edges it can take we should probably not create a general connectivity DSL based on the base trait Transition.

  5. implicit def placeIdentifier(p: Place[_]): Id

    Permalink
  6. implicit def placeLabel[C](p: Place[C]): Label

    Permalink
  7. implicit def toColoredMarking(m: MultiSet[Place[_]]): Marking

    Permalink
  8. implicit def toMarkedPlace(tuple: (Place[Unit], Int)): MarkedPlace[Unit]

    Permalink
  9. implicit def transitionIdentifier(t: Transition[_, _, _]): Id

    Permalink
  10. implicit def transitionLabeler(t: Transition[_, _, _]): Label

    Permalink
  11. package transitions

    Permalink

Inherited from AnyRef

Inherited from Any

Ungrouped