Statements

com.reactific.riddl.language.ast.Statements
trait Statements

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object AST.type
Self type

Members list

Type members

Classlikes

case class ArbitraryStatement(loc: At, what: LiteralString) extends Statement

A statement whose behavior is specified as a text string allowing an arbitrary action to be specified handled by RIDDL's syntax.

A statement whose behavior is specified as a text string allowing an arbitrary action to be specified handled by RIDDL's syntax.

Value parameters

loc

The location where the action occurs in the source

what

The action to take (emitted as pseudo-code)

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
trait RiddlNode
class Object
trait Matchable
class Any
Show all
case class BecomeStatement(loc: At, entity: EntityRef, handler: HandlerRef) extends Statement

An action that changes the behavior of an entity by making it use a new handler for its messages; named for the "become" operation in Akka that does the same for an user.

An action that changes the behavior of an entity by making it use a new handler for its messages; named for the "become" operation in Akka that does the same for an user.

Value parameters

entity

The entity whose behavior is to change

handler

The reference to the new handler for the entity

loc

The location in the source of the become action

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
trait RiddlNode
class Object
trait Matchable
class Any
Show all
case class CallStatement(loc: At, func: FunctionRef) extends Statement

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
trait RiddlNode
class Object
trait Matchable
class Any
Show all
case class ErrorStatement(loc: At, message: LiteralString) extends Statement

An action that is intended to generate a runtime error in the generated application or otherwise indicate an error condition

An action that is intended to generate a runtime error in the generated application or otherwise indicate an error condition

Value parameters

loc

The location where the action occurs in the source

message

The error message to report

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
trait RiddlNode
class Object
trait Matchable
class Any
Show all
case class ForEachStatement(loc: At, ref: PathIdentifier, do_: Seq[Statement]) extends Statement

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
trait RiddlNode
class Object
trait Matchable
class Any
Show all
case class IfThenElseStatement(loc: At, cond: LiteralString, thens: Seq[Statement], elses: Seq[Statement]) extends Statement

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
trait RiddlNode
class Object
trait Matchable
class Any
Show all
case class MorphStatement(loc: At, entity: EntityRef, state: StateRef, value: MessageRef) extends Statement

An statement that morphs the state of an entity to a new structure

An statement that morphs the state of an entity to a new structure

Value parameters

entity

The entity to be affected

loc

The location of the morph action in the source

state

The reference to the new state structure

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
trait RiddlNode
class Object
trait Matchable
class Any
Show all
case class ReplyStatement(loc: At, message: MessageRef) extends Statement

A statement that replys in a handler to a query

A statement that replys in a handler to a query

Value parameters

loc

The location in the source of the publish action

value

The value to be returned

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
trait RiddlNode
class Object
trait Matchable
class Any
Show all
case class ReturnStatement(loc: At, value: LiteralString) extends Statement

An action that returns a value from a function

An action that returns a value from a function

Value parameters

loc

The location in the source of the publish action

value

The value to be returned

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
trait RiddlNode
class Object
trait Matchable
class Any
Show all
case class SendStatement(loc: At, msg: MessageRef, portlet: PortletRef[Portlet]) extends Statement

An action that sends a message to an Inlet or Outlet.

An action that sends a message to an Inlet or Outlet.

Value parameters

loc

The location in the source of the send action

msg

The constructed message to be sent

portlet

The inlet or outlet to which the message is sent

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
trait RiddlNode
class Object
trait Matchable
class Any
Show all
case class SetStatement(loc: At, field: FieldRef, value: LiteralString) extends Statement

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
trait RiddlNode
class Object
trait Matchable
class Any
Show all
trait Statement extends RiddlValue

Attributes

Supertypes
trait RiddlValue
trait RiddlNode
class Object
trait Matchable
class Any
Known subtypes
case class StopStatement(loc: At) extends Statement

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
trait RiddlNode
class Object
trait Matchable
class Any
Show all
case class TellStatement(loc: At, msg: MessageRef, entityRef: ProcessorRef[Processor[_, _]]) extends Statement

An action that tells a message to an entity.

An action that tells a message to an entity. This is very analogous to the tell operator in Akka. Unlike using an Portlet, this implies a direct relationship between the telling entity and the told entity. This action is considered useful in "high cohesion" scenarios. Use SendStatement to reduce the coupling between entities because the relationship is managed by a Context 's Connector instead.

Value parameters

entityRef

The entity to which the message is directed

loc

The location of the tell action

msg

A constructed message value to send to the entity, probably a command

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
trait RiddlNode
class Object
trait Matchable
class Any
Show all