AST

com.ossuminc.riddl.language.AST
object AST

Abstract Syntax Tree This object defines the model for representing RIDDL as an Abstract Syntax Tree. This raw AST has no referential integrity, it just results from applying the parsing rules to the input. The RawAST models produced from parsing are syntactically correct but have no semantic validation.

Attributes

Source
AST.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
AST.type

Members list

Type members

Classlikes

case class Abstract(loc: At) extends PredefinedType

The simplest type expression: Abstract An abstract type expression is one that is not defined explicitly.

The simplest type expression: Abstract An abstract type expression is one that is not defined explicitly. It is treated as a concrete type but without any structural or type information. This is useful for types that are defined only at implementation time or for types whose variations are so complicated they need to remain abstract at the specification level.

Value parameters

loc

The location of the Bool type expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Definition of an Adaptor.

Definition of an Adaptor. Adaptors are defined in Contexts to convert messages from another bounded context. Adaptors translate incoming messages into corresponding messages using the ubiquitous language of the defining bounded context. There should be one Adapter for each external Context

Value parameters

contents

The definitional contents of this Adaptor

context

A reference to the bounded context from which messages are adapted

direction

An indication of whether this is an inbound or outbound adaptor.

id

Name of the adaptor

loc

Location in the parsing input

metadata

The descriptive values for this Adaptor

Attributes

Source
AST.scala
Supertypes
sealed trait AdaptorDirection extends RiddlValue

A trait that is the base trait of Adaptor directions

A trait that is the base trait of Adaptor directions

Attributes

Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A type expression that contains an aggregation of fields (named values) or methods (named functions)

A type expression that contains an aggregation of fields (named values) or methods (named functions)

This is used as the TypeExpression of Aggregations and Messages

Attributes

Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Show all
Known subtypes
sealed trait AggregateUseCase

Base of an enumeration for the four kinds of message types

Base of an enumeration for the four kinds of message types

Attributes

Source
AST.scala
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object CommandCase
object EventCase
object QueryCase
object RecordCase
object ResultCase
object TypeCase
Show all

A type expression for an aggregation that is marked as being one of the use cases.

A type expression for an aggregation that is marked as being one of the use cases. This is used for messages, records, and other aggregate types that need to have their purpose distinguished.

Value parameters

contents

The contents of the message's aggregation

loc

The location of the message type expression

usecase

The kind of message defined

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait AggregateValue extends LeafDefinition

The base trait of values of an aggregate type to provide the required typeEx field to give the TypeExpression for that value of the aggregate

The base trait of values of an aggregate type to provide the required typeEx field to give the TypeExpression for that value of the aggregate

Attributes

Source
AST.scala
Supertypes
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
Known subtypes
class Field
class Method

A type expression that takes a set of named fields as its value.

A type expression that takes a set of named fields as its value.

Value parameters

contents

The content of the aggregation

loc

The location of the aggregation definition

Attributes

Companion
object
Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
object Aggregation

Attributes

Companion
class
Source
AST.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type

A TypeExpression that references another type by PathIdentifier

A TypeExpression that references another type by PathIdentifier

Value parameters

loc

The location of the AliasedTypeExpression

pathId

The path identifier to the aliased type

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A type expression that that defines its range of possible values as being any one of the possible values from a set of other type expressions.

A type expression that that defines its range of possible values as being any one of the possible values from a set of other type expressions.

Value parameters

loc

The location of the alternation type expression

of

The set of type expressions from which the value for this alternation may be chosen

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

An application from which a person, robot, or other active agent (the user) will obtain information, or to which that user will provided information.

An application from which a person, robot, or other active agent (the user) will obtain information, or to which that user will provided information.

Value parameters

contents

The definitional content for this Context

id

The unique identifier for the application

loc

The location of the application in the source

Attributes

Source
AST.scala
Supertypes

A reference to an Application using a path identifier

A reference to an Application using a path identifier

Value parameters

loc

THe location of the ApplicationRef in the source code

pathId

The path identifier that refers to the Application

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

An arbitrary interaction step.

An arbitrary interaction step. The abstract nature of the relationship is

Value parameters

brief

A brief description of the interaction step

from

A reference to the source of the interaction

loc

The location of the step

relationship

A literal spring that specifies the arbitrary relationship

to

A reference to the destination of the interaction

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Interaction
trait WithMetaData
trait RiddlValue
class Object
trait Matchable
class Any
Show all

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

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A value that holds the author's information

A value that holds the author's information

Value parameters

brief

A optional short description of the author

description

An optional long description of the author

email

The author's email address

loc

The location of the author information

name

The full name of the author

organization

The name of the organization the author is associated with

title

The author's title within the organization

url

A URL associated with the author

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A reference to an Author

A reference to an Author

Value parameters

loc

The At at which the reference is located

pathId

The PathIdentifier providing the path to the Author

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Reference[Author]
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A statement 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.

A statement 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

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Blob(loc: At, blobKind: BlobKind) extends PredefinedType

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
enum BlobKind

Attributes

Source
AST.scala
Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

An implementation of a Description that implements the lines directly as a Seq of LiteralString

An implementation of a Description that implements the lines directly as a Seq of LiteralString

Value parameters

lines

The literal lines of this description as a Seq of LiteralString

loc

The At value that provides the location of this BlockDescription

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Description
trait Meta
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A predefined type expression for boolean values (true / false)

A predefined type expression for boolean values (true / false)

Value parameters

loc

The location of the Bool type expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait BranchDefinition[CV <: ContentValues] extends Parent, Container[CV]

Base trait for all definitions that have a specific kind of contents

Base trait for all definitions that have a specific kind of contents

Attributes

Source
AST.scala
Supertypes
trait Parent
trait Container[CV]
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
Known subtypes
class Group
class Handler
class Input
class Nebula
trait OnClause
class Output
class Root
class Type
class UseCase
trait VitalDefinition[CT]
class Domain
class Epic
class Function
class Module
trait Processor[CT]
class Adaptor
class Application
class Context
class Entity
class Projector
class Repository
class Streamlet
class Saga
Show all
case class BriefDescription(loc: At, brief: LiteralString) extends Meta

A single line description for any vital definition

A single line description for any vital definition

Value parameters

brief

The brief description

Attributes

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

A statement that calls a function

A statement that calls a function

Value parameters

func

The function to be called

loc

The location of the statement in the model

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait Cardinality extends TypeExpression

Base trait of the cardinality for type expressions

Base trait of the cardinality for type expressions

Attributes

Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class OneOrMore
class Optional
class ZeroOrMore

A statement that provides a definition of the computation to execute in a specific programming language

A statement that provides a definition of the computation to execute in a specific programming language

Value parameters

body

The code that should be executed by this statement.

language

The name of the programming language in which the body is written

loc

The location of the statement

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case object CommandCase extends AggregateUseCase

An enumerator value to distinguish command aggregates

An enumerator value to distinguish command aggregates

Attributes

Source
AST.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
case class CommandRef(loc: At, pathId: PathIdentifier) extends MessageRef

A Reference to a command message type

A Reference to a command message type

Value parameters

loc

The location of the reference

pathId

The path identifier to the event type

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait MessageRef
class Reference[Type]
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait Comment extends RiddlValue

This trait represents the base trait of all comments recognized by the parser

This trait represents the base trait of all comments recognized by the parser

Attributes

Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes

Value parameters

from

The origin Outlet of the connector

id

The unique identifier of the connector

loc

The location at which the connector is defined

metadata

The meta data for this connector

options

The options for this connector

to

The destination Inlet of the connector

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A definition that represents a constant value for reference in behaviors

A definition that represents a constant value for reference in behaviors

Value parameters

brief

A brief descriptin of the constant

description

A detailed description of the constant

id

The unique identifier of the Constant

loc

The location in the source of the Constant

typeEx

The type expression goverining the range of values the constant can have

value

The value of the constant

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A Group contained within a group

A Group contained within a group

Value parameters

group

The contained group as a reference to that group

id

The name of the group contained

loc

Location of the contained group

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait Container[CV <: ContentValues] extends RiddlValue

Base trait of any RiddlValue that Contains other RiddlValue

Base trait of any RiddlValue that Contains other RiddlValue

Type parameters

CV

The kind of contained value that is contained within.

Attributes

Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Aggregation
trait BranchDefinition[CV]
class Group
class Handler
class Input
class Nebula
trait OnClause
class Output
class Root
class Type
class UseCase
trait VitalDefinition[CT]
class Domain
class Epic
class Function
class Module
trait Processor[CT]
class Adaptor
class Application
class Context
class Entity
class Projector
class Repository
class Streamlet
class Saga
class Include[CT]
trait Parent
class SimpleContainer[CV]
trait WithAdaptors[CV]
trait WithApplications[CV]
trait WithAuthors[CV]
trait WithComments[CV]
trait WithConnectors[CV]
trait WithConstants[CV]
trait WithContexts[CV]
trait WithDomains[CV]
trait WithEntities[CV]
trait WithEpics[CV]
trait WithFunctions[CV]
trait WithGroups[CV]
trait WithHandlers[CV]
trait WithIncludes[CV]
trait WithInlets[CV]
trait WithInputs[CV]
trait WithInvariants[CV]
trait WithModules[CV]
trait WithOptions[CV]
trait WithOutlets[CV]
trait WithOutputs[CV]
trait WithProjectors[CV]
trait WithRepositories[CV]
trait WithSagaSteps[CV]
trait WithSagas[CV]
trait WithShownBy[CV]
trait WithStatements[CV]
trait WithStates[CV]
trait WithStreamlets[CV]
trait WithTypes[CV]
trait WithUseCases[CV]
trait WithUsers[CV]
Show all
object Contents

Attributes

Source
AST.scala
Supertypes
class Object
trait Matchable
class Any
Self type
Contents.type

A bounded context definition.

A bounded context definition. Bounded contexts provide a definitional boundary on the language used to describe some aspect of a system. They imply a tightly integrated ecosystem of one or more microservices that share a common purpose. Context can be used to house entities, read side projectors, sagas, adaptations to other contexts, apis, and etc.

Value parameters

contents

The definitional content for this Context

id

The name of the context

loc

The location of the bounded context definition

Attributes

Companion
object
Source
AST.scala
Supertypes
object Context

Attributes

Companion
class
Source
AST.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Context.type

A reference to a bounded context

A reference to a bounded context

Value parameters

loc

The location of the reference

pathId

The path identifier for the referenced context

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Currency(loc: At, country: String) extends PredefinedType

The type representation of a national monetary currency

The type representation of a national monetary currency

Value parameters

country

The ISO 3166 A-3 three letter code for the country

loc

Location at which the currency type occurs

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A predefined type expression for the SI Base unit for Current (amperes)

A predefined type expression for the SI Base unit for Current (amperes)

Value parameters

loc

\- The locaitonof the current type expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Date(loc: At) extends TimeType

A predefined type expression for a calendar date.

A predefined type expression for a calendar date.

Value parameters

loc

The location of the date type expression.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait TimeType
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class DateTime(loc: At) extends TimeType

A predefined type expression for a calendar date and clock time combination.

A predefined type expression for a calendar date and clock time combination.

Value parameters

loc

The location of the datetime type expression.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait TimeType
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A predefined type expression for a decimal value including IEEE floating point syntax.

A predefined type expression for a decimal value including IEEE floating point syntax.

Value parameters

loc

The location of the decimal integer type expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all
object Definition

Attributes

Companion
trait
Source
AST.scala
Supertypes
class Object
trait Matchable
class Any
Self type
Definition.type
sealed trait Definition extends WithIdentifier

Base trait for all Definitions.

Base trait for all Definitions. Their mere distinction at this level of abstraction is to simply have an identifier and can have attachments

Attributes

See also
Companion
object
Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Enumerator
class Field
class Method
class Author
class Connector
class Constant
class Invariant
trait Portlet
class Inlet
class Outlet
class Relationship
class SagaStep
class Schema
class State
class Term
class User
trait Parent
trait BranchDefinition[CV]
class Group
class Handler
class Input
class Nebula
trait OnClause
class Output
class Root
class Type
class UseCase
trait VitalDefinition[CT]
class Domain
class Epic
class Function
class Module
trait Processor[CT]
class Adaptor
class Application
class Context
class Entity
class Projector
class Repository
class Streamlet
class Saga
Show all

Attributes

Source
AST.scala
Supertypes
class Object
trait Matchable
class Any
Self type
object Definitions

Attributes

Source
AST.scala
Supertypes
class Object
trait Matchable
class Any
Self type
object Description

Companion class for Description only to define the empty value

Companion class for Description only to define the empty value

Attributes

Companion
trait
Source
AST.scala
Supertypes
class Object
trait Matchable
class Any
Self type
sealed trait Description extends Meta

The description of a definition.

The description of a definition. All definitions have a name and an optional description. This class provides the description part.

Attributes

Companion
object
Source
AST.scala
Supertypes
trait Meta
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes

An interaction between a ser and a URL

An interaction between a ser and a URL

Value parameters

brief

A brief description for documentation purposes

description

A more full description of the interaction for documentation purposes

from

The user from which the interaction emanates

loc

THe location of the interaction in the model

url

The URL towards which the user is directed

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Interaction
trait WithMetaData
trait RiddlValue
class Object
trait Matchable
class Any
Show all

The definition of a domain.

The definition of a domain. Domains are the highest building block in RIDDL and may be nested inside each other to form a hierarchy of domains. Generally, domains follow hierarchical organization structure but other taxonomies and ontologies may be modelled with domains too.

Value parameters

contents

The definitional content for this Context

id

The name of the domain

loc

The location of the domain definition

Attributes

Source
AST.scala
Supertypes

A reference to a domain definition

A reference to a domain definition

Value parameters

loc

The location at which the domain definition occurs

pathId

The path identifier for the referenced domain.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Reference[Domain]
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Duration(loc: At) extends TimeType

A predefined type expression for a time duration that records the number of milliseconds between two fixed points in time

A predefined type expression for a time duration that records the number of milliseconds between two fixed points in time

Value parameters

loc

The location of the duration type expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait TimeType
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Definition of an Entity

Definition of an Entity

Value parameters

contents

The definitional content of this entity: handlers, states, functions, invariants, etc.

id

The name of the entity

loc

The location in the input

Attributes

Source
AST.scala
Supertypes

A reference to an entity

A reference to an entity

Value parameters

loc

The location of the entity reference

pathId

The path identifier of the referenced entity.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Reference[Entity]
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A type expression whose value is a reference to an instance of an entity.

A type expression whose value is a reference to an instance of an entity.

Value parameters

entity

The type of entity referenced by this type expression.

loc

The location of the reference type expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A type expression that defines its range of possible values as being one value from a set of enumerated values.

A type expression that defines its range of possible values as being one value from a set of enumerated values.

Value parameters

enumerators

The set of enumerators from which the value of this enumeration may be chosen.

loc

The location of the enumeration type expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Enumerator(loc: At, id: Identifier, enumVal: Option[Long]) extends Definition

Represents one variant among (one or) many variants that comprise an Enumeration

Represents one variant among (one or) many variants that comprise an Enumeration

Value parameters

enumVal

the optional int value

id

the identifier (name) of the Enumerator

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

The definition of an Epic that bundles multiple Jacobsen Use Cases into an overall story about user interactions with the system.

The definition of an Epic that bundles multiple Jacobsen Use Cases into an overall story about user interactions with the system. This define functionality from the perspective of users (men or machines) interactions with the system that is part of their role.

Value parameters

contents

The definitional content for this Context

id

The name of the Epic

loc

The location of the Epic definition

userStory

The UserStory (per agile and xP) that provides the overall big picture of this Epic

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class EpicRef(loc: At, pathId: PathIdentifier) extends Reference[Epic]

A reference to a Story definintion.

A reference to a Story definintion.

Value parameters

loc

Location of the StoryRef

pathId

The path id of the referenced Story

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Reference[Epic]
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A statement that is intended to generate a runtime error in the application or otherwise indicate an error condition

A statement that is intended to generate a runtime error in the 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

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case object EventCase extends AggregateUseCase

An enumerator value to distinguish event aggregates

An enumerator value to distinguish event aggregates

Attributes

Source
AST.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
EventCase.type
case class EventRef(loc: At, pathId: PathIdentifier) extends MessageRef

A Reference to an event message type

A Reference to an event message type

Value parameters

loc

The location of the reference

pathId

The path identifier to the event type

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait MessageRef
class Reference[Type]
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A definition that is a field of an aggregation type expressions.

A definition that is a field of an aggregation type expressions. Fields associate an identifier with a type expression.

Value parameters

brief

A brief description (one sentence) for use in documentation

description

An optional description of the field.

id

The name of the field

loc

The location of the field definition

typeEx

The type of the field

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class FieldRef(loc: At, pathId: PathIdentifier) extends Reference[Field]

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Reference[Field]
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Meta
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Flow(loc: At) extends StreamletShape

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

An interaction where an User receives output

An interaction where an User receives output

Value parameters

brief

A brief description of this interaction

from

The User that is being focused

loc

The location of the interaction in the source

to

The Group that is the target of the focus

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Interaction
trait WithMetaData
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class FocusStatement(loc: At, group: GroupRef) extends Statement

A statement that changes the focus of input in an application to a specific group

A statement that changes the focus of input in an application to a specific group

Value parameters

group

The group that is the target of the input focus

loc

The location of the statement

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A statement that suggests looping over the contents of a field with a non-zero cardinality, an Inlet or an outlet

A statement that suggests looping over the contents of a field with a non-zero cardinality, an Inlet or an outlet

Value parameters

do_

The set of statements to execute for each iteration_

loc

The location of the statement in the model

ref

The reference to the Field, outlet or Inlet

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A function definition which can be part of a bounded context or an entity.

A function definition which can be part of a bounded context or an entity.

Value parameters

contents

The set of types, functions, statements, authors, includes and terms that define this FUnction

id

The identifier that names the function

input

An optional type expression that names and types the fields of the input of the function

loc

The location of the function definition

metadata

The set of descriptive values for this function

output

An optional type expression that names and types the fields of the output of the function

Attributes

Source
AST.scala
Supertypes

A reference to a function.

A reference to a function.

Value parameters

loc

The location of the function reference.

pathId

The path identifier of the referenced function.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait GenericInteraction extends Interaction

Attributes

Source
AST.scala
Supertypes
trait Interaction
trait WithMetaData
trait RiddlValue
class Object
trait Matchable
class Any
Show all
Known subtypes
case class Graph(loc: At, of: TypeExpression) extends TypeExpression

A graph of homogenous nodes.

A graph of homogenous nodes. This implies the nodes are augmented with additional data to support navigation in the graph but that detail is left to the implementation of the model.

Value parameters

loc

Where the type expression occurs in the source

of

The type of the elements of the graph

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A group of GroupDefinition that can be treated as a whole.

A group of GroupDefinition that can be treated as a whole. For example, a form, a button group, etc.

Value parameters

alias

The buzzword used to define this group

contents

The list of GroupDefinition

id

The unique identifier of the group

loc

The location of the group

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A Reference to a Group

A Reference to a Group

Value parameters

keyword

The keyword used to introduce the Group

loc

The At locator of the group reference

pathId

The path to the referenced group

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Reference[Group]
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A named handler of messages (commands, events, queries) that bundles together a set of OnMessageClause definitions and by doing so defines the behavior of an entity.

A named handler of messages (commands, events, queries) that bundles together a set of OnMessageClause definitions and by doing so defines the behavior of an entity. Note that entities may define multiple handlers and switch between them to change how it responds to messages over time or in response to changing conditions

Value parameters

contents

The set of OnMessageClause definitions and comments that define how the entity responds to received messages.

id

The name of the handler.

loc

The location of the handler definition

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A reference to a Handler

A reference to a Handler

Value parameters

loc

The location of the handler reference

pathId

The path identifier of the referenced handler

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Identifier(loc: At, value: String) extends RiddlValue

A RiddlValue that is a parsed identifier, typically the name of a definition.

A RiddlValue that is a parsed identifier, typically the name of a definition.

Value parameters

loc

The location in the input where the identifier starts

value

The parsed value of the Identifier

Attributes

Companion
object
Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
object Identifier

Companion object for the Identifier class to provide the empty value

Companion object for the Identifier class to provide the empty value

Attributes

Companion
class
Source
AST.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Identifier.type

A statement that represents a class if-condition-then-A-else-B construct for logic decitions.

A statement that represents a class if-condition-then-A-else-B construct for logic decitions.

Value parameters

cond

The conditional part of the if-then-else

elses

The tsatements to execute if cond is false

loc

The location of the statement in the model

thens

The statements to execute if cond is true

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class InboundAdaptor(loc: At) extends AdaptorDirection

Represents an AdaptorDirection that is inbound (towards the bounded context the Adaptor was defined in)

Represents an AdaptorDirection that is inbound (towards the bounded context the Adaptor was defined in)

Value parameters

loc

Location in the source of the adaptor direction

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Include[CT <: RiddlValue](loc: At, origin: URL, contents: ArrayBuffer[CT]) extends Container[CT]

A value to record an inclusion of a file while parsing.

A value to record an inclusion of a file while parsing.

Type parameters

CT

The type of things that may be included as the contents of the Include's parent.

Value parameters

contents

The Vital Definitions read from the file

loc

The location of the include statement in the source

origin

The string that indicates the origin of the inclusion

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Container[CT]
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A streamlet that supports input of data of a particular type.

A streamlet that supports input of data of a particular type.

Value parameters

brief

A brief description (one sentence) for use in documentation

description

An optional description of the Inlet

id

The name of the inlet

loc

The location of the Inlet definition

type_

The type of the data that is received from the inlet

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Portlet
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class InletRef(loc: At, pathId: PathIdentifier) extends PortletRef[Inlet]

A reference to an Inlet

A reference to an Inlet

Value parameters

loc

The location of the inlet reference

pathId

The path identifier of the referenced Inlet

Attributes

Companion
object
Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait PortletRef[Inlet]
class Reference[Inlet]
trait RiddlValue
class Object
trait Matchable
class Any
Show all
object InletRef

Attributes

Companion
class
Source
AST.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
InletRef.type
case class InlineComment(loc: At, lines: Seq[String]) extends Comment

The AST representation of a comment that can span across lines and is inline with the definitions.

The AST representation of a comment that can span across lines and is inline with the definitions.

Value parameters

lines

The lines of the comment without line terminators

loc

The location at which the comment occurs

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Comment
trait RiddlValue
class Object
trait Matchable
class Any
Show all

An Input is a UI Element to allow the user to provide some data to the application.

An Input is a UI Element to allow the user to provide some data to the application. It is analogous to a form in HTML

Value parameters

id

Name of the give

loc

Location of the Give

takeIn

a Type reference of the type given by the user

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A reference to an Input using a path identifier

A reference to an Input using a path identifier

Value parameters

loc

THe location of the GiveRef in the source code

pathId

The path identifier that refers to the Give

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Reference[Input]
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A predefined type expression for an integer value

A predefined type expression for an integer value

Value parameters

loc

The location of the integer type expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait IntegerTypeExpression extends NumericType

Base of all the Integer Numeric types

Base of all the Integer Numeric types

Attributes

Source
AST.scala
Supertypes
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all
Known subtypes
class Bool
class Enumeration
class Integer
class Natural
class Number
class RangeType
class Whole
Show all

Attributes

Source
AST.scala
Supertypes
trait Interaction
trait WithMetaData
trait RiddlValue
class Object
trait Matchable
class Any
Show all
Known subtypes

An invariant expression that can be used in the definition of an entity.

An invariant expression that can be used in the definition of an entity. Invariants provide conditional expressions that must be true at all times in the lifecycle of an entity.

Value parameters

condition

The string representation of the condition that ought to be true

id

The name of the invariant

loc

The location of the invariant definition

metadata

The list of meta data for the invariant

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait LeafDefinition extends Definition, WithMetaData

A leaf node in the hierarchy of definitions.

A leaf node in the hierarchy of definitions. Leaves have no content, unlike Parent. They do permit a single BriefDescription value and single Description value. There are no contents.

Attributes

Source
AST.scala
Supertypes
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
Known subtypes
class Field
class Method
class Author
class Connector
class Constant
class Invariant
trait Portlet
class Inlet
class Outlet
class Relationship
class SagaStep
class Schema
class State
class Term
class User
Show all

A predefined type expression for the SI Base unit for Length (meters)

A predefined type expression for the SI Base unit for Length (meters)

Value parameters

loc

The location of the current type expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class LineComment(loc: At, text: String) extends Comment

The AST Representation of a single line comment in the input.

The AST Representation of a single line comment in the input. LineComments can only occur after the closing brace, }, of a definition. The comment is stored within the Definition

Value parameters

loc

Location in the input of the // comment introducer

text

The text of the comment, everything after the // to the end of line

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Comment
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class LiteralString(loc: At, s: String) extends RiddlValue

Represents a literal string parsed between quote characters in the input

Represents a literal string parsed between quote characters in the input

Value parameters

loc

The location in the input of the opening quote character

s

The parsed value of the string content

Attributes

Companion
object
Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
object LiteralString

Companion for LiteralString class to provide the empty value

Companion for LiteralString class to provide the empty value

Attributes

Companion
class
Source
AST.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
case class Location(loc: At) extends PredefinedType

A predefined type expression for a location on earth given in latitude and longitude.

A predefined type expression for a location on earth given in latitude and longitude.

Value parameters

loc

The location of the LatLong type expression.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A predefined type expression for the SI Base Unit for Luminosity (candela)

A predefined type expression for the SI Base Unit for Luminosity (candela)

Value parameters

loc

The location of the luminosity expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A type expressions that defines a mapping from a key to a value.

A type expressions that defines a mapping from a key to a value. The value of a Mapping is the set of mapped key -> value pairs, based on which keys have been provided values.

Value parameters

from

The type expression for the keys of the mapping

loc

The location of the mapping type expression

to

The type expression for the values of the mapping

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Mass(loc: At) extends PredefinedType, RealTypeExpression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Merge(loc: At) extends StreamletShape

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
object MessageRef

Attributes

Companion
trait
Source
AST.scala
Supertypes
class Object
trait Matchable
class Any
Self type
MessageRef.type
sealed trait MessageRef extends Reference[Type]

Base trait for the four kinds of message references

Base trait for the four kinds of message references

Attributes

Companion
object
Source
AST.scala
Supertypes
class Reference[Type]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class CommandRef
class EventRef
class QueryRef
class RecordRef
class ResultRef
trait Meta extends RiddlValue

A descriptive is something non-definitional that can be added to a definition.

A descriptive is something non-definitional that can be added to a definition. They occurs in the with section of the definition

Attributes

Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes

A leaf definition that is a callable method (function) of an aggregate type expression.

A leaf definition that is a callable method (function) of an aggregate type expression. Methods associate an identifier with a computed TypeExpression.

Value parameters

args

The type of the field

brief

A brief description (one sentence) for use in documentation

description

An optional description of the field.

id

The name of the field

loc

The location of the field definition

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

An argument of a method value for an aggregate

An argument of a method value for an aggregate

Value parameters

loc

The parse location of the argument

name

The name of the argument

typeEx

The type of the argument as a TypeExpression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A Module represents a

A Module represents a

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Mole(loc: At) extends PredefinedType, RealTypeExpression

A predefined type expression for the SI Base Unit for Mole (mole)

A predefined type expression for the SI Base Unit for Mole (mole)

Value parameters

loc

The location of the mass type expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all

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

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all

The nubula of arbitrary definitions.

The nubula of arbitrary definitions. This allows any named definition in its contents without regard to intended structure of those things. This can be used as a general "scratchpad".

Value parameters

contents

The nebula of unrelated single definitions

Attributes

Companion
object
Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
object Nebula

Attributes

Companion
class
Source
AST.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Nebula.type
case class Nothing(loc: At) extends PredefinedType

A predefined type expression for a type that can have no values

A predefined type expression for a type that can have no values

Value parameters

loc

The location of the nothing type expression.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A predefined type expression for an arbitrary number value

A predefined type expression for an arbitrary number value

Value parameters

loc

The location of the number type expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait NumericType extends TypeExpression

Base of all Numeric types

Base of all Numeric types

Attributes

Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Bool
class Enumeration
class Integer
class Natural
class Number
class RangeType
class Whole
class Current
class Decimal
class Length
class Luminosity
class Mass
class Mole
class Real
class Temperature
Show all

A sealed trait for the kinds of OnClause that can occur within a Handler definition.

A sealed trait for the kinds of OnClause that can occur within a Handler definition.

Attributes

Source
AST.scala
Supertypes
trait WithMetaData
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
Known subtypes

Defines the actions to be taken when the component this OnClause occurs in is initialized.

Defines the actions to be taken when the component this OnClause occurs in is initialized.

Value parameters

contents

A set of statements that define the behavior when a message doesn't match

loc

THe location of the "on other" clause

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait OnClause
trait WithMetaData
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Defines the actions to be taken when a particular message is received by an entity.

Defines the actions to be taken when a particular message is received by an entity. OnMessageClauses are used in the definition of a Handler with one for each kind of message that handler deals with.

Value parameters

contents

A set of statements that define the behavior when the msg is received.

from

Optional message generating

loc

The location of the "on" clause

msg

A reference to the message type that is handled

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait OnClause
trait WithMetaData
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Defines the actions to be taken when a message does not match any of the OnMessageClauses.

Defines the actions to be taken when a message does not match any of the OnMessageClauses. OnOtherClause corresponds to the "other" case of an Handler.

Value parameters

contents

A set of examples that define the behavior when a message doesn't match

loc

THe location of the "on other" clause

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait OnClause
trait WithMetaData
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Defines the actions to be taken when the component this OnClause occurs in is initialized.

Defines the actions to be taken when the component this OnClause occurs in is initialized.

Value parameters

contents

A set of statements that define the behavior when a message doesn't match

loc

THe location of the "on other" clause

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait OnClause
trait WithMetaData
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A cardinality type expression that indicates another type expression as having one or more instances.

A cardinality type expression that indicates another type expression as having one or more instances.

Value parameters

loc

The location of the one-or-more cardinality

typeExp

The type expression that is indicated with a cardinality of one or more.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Cardinality
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Base trait for option values for any option of a definition.

Base trait for option values for any option of a definition.

Value parameters

args

THe arguments of the option as LiteralString which may be empty

loc

The location at which the OptionValue occurs

name

The name of the option

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Optional(loc: At, typeExp: TypeExpression) extends Cardinality

A cardinality type expression that indicates another type expression as being optional; that is with a cardinality of 0 or 1.

A cardinality type expression that indicates another type expression as being optional; that is with a cardinality of 0 or 1.

Value parameters

loc

The location of the optional cardinality

typeExp

The type expression that is indicated as optional

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Cardinality
trait RiddlValue
class Object
trait Matchable
class Any
Show all

An interaction expression that specifies that its contents are optional

An interaction expression that specifies that its contents are optional

Value parameters

brief

A brief description of the optional group

contents

The optional expressions

loc

The location of the optional group

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Interaction
trait WithMetaData
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class OutboundAdaptor(loc: At) extends AdaptorDirection

Represents an AdaptorDirection that is outbouand (towards a bounded context that is not the one that defined the Adaptor

Represents an AdaptorDirection that is outbouand (towards a bounded context that is not the one that defined the Adaptor

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A streamlet that supports output of data of a particular type.

A streamlet that supports output of data of a particular type.

Value parameters

brief

A brief description (one sentence) for use in documentation

description

An optional description of the Outlet.

id

The name of the outlet

loc

The location of the outlet definition

type_

The type expression for the kind of data put out

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Portlet
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A reference to an Outlet

A reference to an Outlet

Value parameters

loc

The location of the outlet reference

pathId

The path identifier of the referenced Outlet

Attributes

Companion
object
Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Reference[Outlet]
trait RiddlValue
class Object
trait Matchable
class Any
Show all
object OutletRef

Attributes

Companion
class
Source
AST.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
OutletRef.type

A UI Element that presents some information to the user

A UI Element that presents some information to the user

Value parameters

contents

Any contained outputs

id

unique identifier oof the view

loc

Location of the view in the source

putOut

A result reference for the data too be presented

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A reference to an Output using a path identifier

A reference to an Output using a path identifier

Value parameters

loc

The location of the ViewRef in the source code

pathId

The path identifier that refers to the View

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Reference[Output]
trait RiddlValue
class Object
trait Matchable
class Any
Show all

An interaction expression that specifies that each contained expression should be executed in parallel

An interaction expression that specifies that each contained expression should be executed in parallel

Value parameters

brief

A brief description of the parallel group

contents

The expressions to execute in parallel

loc

Location of the parallel group

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Interaction
trait WithMetaData
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait Parent extends Definition, Container[_]

The Base trait for a definition that contains some unrestricted kind of content, ContentValues

The Base trait for a definition that contains some unrestricted kind of content, ContentValues

Attributes

Source
AST.scala
Supertypes
trait Container[_]
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
Known subtypes
trait BranchDefinition[CV]
class Group
class Handler
class Input
class Nebula
trait OnClause
class Output
class Root
class Type
class UseCase
trait VitalDefinition[CT]
class Domain
class Epic
class Function
class Module
trait Processor[CT]
class Adaptor
class Application
class Context
class Entity
class Projector
class Repository
class Streamlet
class Saga
Show all
object ParentStack

A Companion to the ParentStack class

A Companion to the ParentStack class

Attributes

Source
AST.scala
Supertypes
class Object
trait Matchable
class Any
Self type
object Parents

Attributes

Source
AST.scala
Supertypes
class Object
trait Matchable
class Any
Self type
Parents.type
case class PathIdentifier(loc: At, value: Seq[String]) extends RiddlValue

Represents a segmented identifier to a definition in the model.

Represents a segmented identifier to a definition in the model. Path Identifiers are parsed from a dot-separated list of identifiers in the input. Path identifiers are used to reference other definitions in the model.

Value parameters

loc

Location in the input of the first letter of the path identifier

value

The list of strings that make up the path identifier

Attributes

Companion
object
Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Companion object of the PathIdentifier class to provide its empty value

Companion object of the PathIdentifier class to provide its empty value

Attributes

Companion
class
Source
AST.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type

A type expression that defines a string value constrained by a Java Regular Expression

A type expression that defines a string value constrained by a Java Regular Expression

Value parameters

loc

The location of the pattern type expression

pattern

The Java Regular Expression to which values of this type expression must obey.

Attributes

See also

https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/regex/Pattern.html

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait Portlet extends LeafDefinition

A sealed trait for Inlets and Outlets

A sealed trait for Inlets and Outlets

Attributes

Source
AST.scala
Supertypes
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
Known subtypes
class Inlet
class Outlet
sealed trait PortletRef[+T <: Portlet] extends Reference[T]

Sealed base trait of references to Inlets or Outlets

Sealed base trait of references to Inlets or Outlets

Type parameters

T

The type of definition to which the references refers.

Attributes

Source
AST.scala
Supertypes
class Reference[T]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class InletRef
class OutletRef
abstract class PredefinedType extends TypeExpression

Base class of all pre-defined type expressions

Base class of all pre-defined type expressions

Attributes

Companion
object
Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Abstract
class Blob
class Bool
class Currency
class Current
class Integer
class Length
class Location
class Luminosity
class Mass
class Mole
class Natural
class Nothing
class Number
class Pattern
class Real
class String_
class Temperature
trait TimeType
class Date
class DateTime
class Duration
class Time
class TimeStamp
class URI
class UUID
class UniqueId
class UserId
class Whole
Show all

Attributes

Companion
class
Source
AST.scala
Supertypes
class Object
trait Matchable
class Any
Self type

Definition of a Processor.

Definition of a Processor. This is a base class for all Processor definitions (things that have inlets, outlets, handlers, functions, and take messages directly with a reference). Processors are the active portion of a model since they handle messages and do the associated processing.

Type parameters

CT

The type of content that the Processor may contain

Attributes

Source
AST.scala
Supertypes
trait WithStreamlets[CT]
trait WithHandlers[CT]
trait WithFunctions[CT]
trait WithInvariants[CT]
trait WithConstants[CT]
trait VitalDefinition[CT]
trait WithMetaData
trait WithOptions[CT]
trait WithComments[CT]
trait WithIncludes[CT]
trait WithTypes[CT]
trait BranchDefinition[CT]
trait Parent
trait Container[CT]
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
Known subtypes
class Adaptor
class Application
class Context
class Entity
class Projector
class Repository
class Streamlet
Show all
sealed trait ProcessorRef[+T <: Processor[_]] extends Reference[T]

Base trait of a reference to definitions that can accept a message directly via a reference

Base trait of a reference to definitions that can accept a message directly via a reference

Type parameters

T

The kind of reference needed

Attributes

Source
AST.scala
Supertypes
class Reference[T]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class AdaptorRef
class ContextRef
class EntityRef
class ProjectorRef
class StreamletRef
Show all

Projectors get their name from Euclidean Geometry but are probably more analogous to a relational database view.

Projectors get their name from Euclidean Geometry but are probably more analogous to a relational database view. The concept is very simple in RIDDL: projectors gather data from entities and other sources, transform that data into a specific record type, and support querying that data arbitrarily.

Value parameters

contents

The content of this Projectors' definition

id

The unique identifier for this Projector

loc

Location in the source of the Projector

Attributes

See also

https://en.wikipedia.org/wiki/View_(SQL)).

https://en.wikipedia.org/wiki/Projector_(mathematics)

Source
AST.scala
Supertypes

A reference to an context's projector definition

A reference to an context's projector definition

Value parameters

loc

The location of the state reference

pathId

The path identifier of the referenced projector definition

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case object QueryCase extends AggregateUseCase

An enumerator value to distinguish query aggregates

An enumerator value to distinguish query aggregates

Attributes

Source
AST.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
QueryCase.type
case class QueryRef(loc: At, pathId: PathIdentifier) extends MessageRef

A reference to a query message type

A reference to a query message type

Value parameters

loc

The location of the reference

pathId

The path identifier to the query type

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait MessageRef
class Reference[Type]
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class RangeType(loc: At, min: Long, max: Long) extends IntegerTypeExpression

A type expression that defines a set of integer values from a minimum value to a maximum value, inclusively.

A type expression that defines a set of integer values from a minimum value to a maximum value, inclusively.

Value parameters

loc

The location of the RangeType type expression

max

The maximum value of the RangeType

min

The minimum value of the RangeType

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A statement that reads data from a Repository

A statement that reads data from a Repository

Value parameters

from

A reference to the type from which the value should be read in the repository

keyword

The keyword used to color the nature of the read operation

loc

The location of the statement in the model

what

A string describing what should be read

where

A string describing the conditions on the read (like a SQL WHERE clause)

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Real(loc: At) extends PredefinedType, RealTypeExpression

A predefined type expression for a real number value.

A predefined type expression for a real number value.

Value parameters

loc

The location of the real number type expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait RealTypeExpression extends NumericType

Base of all the Real Numeric types

Base of all the Real Numeric types

Attributes

Source
AST.scala
Supertypes
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all
Known subtypes
class Current
class Decimal
class Length
class Luminosity
class Mass
class Mole
class Number
class Real
class Temperature
Show all
case object RecordCase extends AggregateUseCase

An enumerator value to distinguish record aggregates

An enumerator value to distinguish record aggregates

Attributes

Source
AST.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
RecordCase.type
case class RecordRef(loc: At, pathId: PathIdentifier) extends MessageRef

A reference to a record message type

A reference to a record message type

Value parameters

loc

The location of the reference

pathId

The path identifier to the result type

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait MessageRef
class Reference[Type]
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed abstract class Reference[+T <: Definition] extends RiddlValue

A reference to a definition of a specific type.

A reference to a definition of a specific type.

Type parameters

T

The type of definition to which the references refers.

Attributes

Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class AuthorRef
class ConstantRef
class DomainRef
class EpicRef
class FieldRef
class FunctionRef
class GroupRef
class HandlerRef
class InputRef
trait MessageRef
class CommandRef
class EventRef
class QueryRef
class RecordRef
class ResultRef
class OutputRef
trait PortletRef[T]
class InletRef
class OutletRef
trait ProcessorRef[T]
class AdaptorRef
class ContextRef
class EntityRef
class ProjectorRef
class StreamletRef
class SagaRef
class StateRef
class TypeRef
class UserRef
Show all

A relationship between the Processor containing this value and another Processors

A relationship between the Processor containing this value and another Processors

Value parameters

cardinality

The cardinality of the relationship between processors

id

The identifier of this relationship which uniquely defines it within the containing processor.

label

The label for this relationship as if drawn on a line connecting processors. This is optional and if not set, the id of the relationship is used instead

loc

The location in the source where this relationship occurs

processorRef

The referenced processor towards which this relationship is formed

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Attributes

Source
AST.scala
Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class Replica(loc: At, of: TypeExpression) extends TypeExpression

A value that is replicated across nodes in a cluster.

A value that is replicated across nodes in a cluster. Usage requirements placement in a definition such as Context or Entity that supports the clustered value for the kind option.

Value parameters

loc

Where the replica type expression occurs in the source

of

The kind of data value that is replicated across cluster nodes. Because replicas imply use of a Conflict-free Replicated Data Type, the kind of type expression for of is restricted to numeric, set, and map types

Attributes

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

A statement that replies in a handler to a query

A statement that replies in a handler to a query

Value parameters

loc

The location in the source of the publish action

message

The message to be returned

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A RIDDL repository is an abstraction for anything that can retain information(e.g.

A RIDDL repository is an abstraction for anything that can retain information(e.g. messages for retrieval at a later time. This might be a relational database, NoSQL database, data lake, API, or something not yet invented. There is no specific technology implied other than the retention and retrieval of information. You should think of repositories more like a message-oriented version of the Java Repository Pattern than any particular kind ofdatabase.

Value parameters

contents

The definitional content of this Repository: types, handlers, inlets, outlets, etc.

id

The unique identifier for this Repository

loc

Location in the source of the Repository

Attributes

See also

https://java-design-patterns.com/patterns/repository/#explanation

Source
AST.scala
Supertypes

A reference to a repository definition

A reference to a repository definition

Value parameters

loc

The location of the state reference

pathId

The path identifier of the referenced projector definition

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Attributes

Source
AST.scala
Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case object ResultCase extends AggregateUseCase

An enumerator value to distinguish result aggregates

An enumerator value to distinguish result aggregates

Attributes

Source
AST.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
ResultCase.type
case class ResultRef(loc: At, pathId: PathIdentifier) extends MessageRef

A reference to a result message type

A reference to a result message type

Value parameters

loc

The location of the reference

pathId

The path identifier to the result type

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait MessageRef
class Reference[Type]
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A statement that returns a value from a function

A statement 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

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait RiddlValue

The root trait of all parsed values.

The root trait of all parsed values. If a parser returns something, its a RiddlValue. Every node in the AST is a RiddlNode. Subclasses implement the definitions in various ways because this is the most abstract notion of what is parsed.

Attributes

Source
AST.scala
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait Comment
class LineComment
trait Container[CV]
class Aggregation
trait BranchDefinition[CV]
class Group
class Handler
class Input
class Nebula
trait OnClause
class Output
class Root
class Type
class UseCase
trait VitalDefinition[CT]
class Domain
class Epic
class Function
class Module
trait Processor[CT]
class Adaptor
class Application
class Context
class Entity
class Projector
class Repository
class Streamlet
class Saga
class Include[CT]
trait Parent
class SimpleContainer[CV]
trait WithAdaptors[CV]
trait WithApplications[CV]
trait WithAuthors[CV]
trait WithComments[CV]
trait WithConnectors[CV]
trait WithConstants[CV]
trait WithContexts[CV]
trait WithDomains[CV]
trait WithEntities[CV]
trait WithEpics[CV]
trait WithFunctions[CV]
trait WithGroups[CV]
trait WithHandlers[CV]
trait WithIncludes[CV]
trait WithInlets[CV]
trait WithInputs[CV]
trait WithInvariants[CV]
trait WithModules[CV]
trait WithOptions[CV]
trait WithOutlets[CV]
trait WithOutputs[CV]
trait WithProjectors[CV]
trait WithRepositories[CV]
trait WithSagaSteps[CV]
trait WithSagas[CV]
trait WithShownBy[CV]
trait WithStatements[CV]
trait WithStates[CV]
trait WithStreamlets[CV]
trait WithTypes[CV]
trait WithUseCases[CV]
trait WithUsers[CV]
class Identifier
trait Interaction
trait Meta
trait Description
class OptionValue
class Reference[T]
class AuthorRef
class ConstantRef
class DomainRef
class EpicRef
class FieldRef
class FunctionRef
class GroupRef
class HandlerRef
class InputRef
trait MessageRef
class CommandRef
class EventRef
class QueryRef
class RecordRef
class ResultRef
class OutputRef
trait PortletRef[T]
class InletRef
class OutletRef
trait ProcessorRef[T]
class AdaptorRef
class ContextRef
class EntityRef
class ProjectorRef
class StreamletRef
class SagaRef
class StateRef
class TypeRef
class UserRef
class ShownBy
trait Statement
class SetStatement
class Flow
class Merge
class Router
class Sink
class Source
class Split
class Void
class Alternation
trait Cardinality
class OneOrMore
class Optional
class ZeroOrMore
class Graph
class Mapping
trait NumericType
class Bool
class Enumeration
class Integer
class Natural
class Number
class RangeType
class Whole
class Current
class Decimal
class Length
class Luminosity
class Mass
class Mole
class Real
class Temperature
class Abstract
class Blob
class Currency
class Location
class Nothing
class Pattern
class String_
trait TimeType
class Date
class DateTime
class Duration
class Time
class TimeStamp
class URI
class UUID
class UniqueId
class UserId
class Replica
class Sequence
class Set
class Table
class UserStory
trait Definition
class Enumerator
class Field
class Method
class Author
class Connector
class Constant
class Invariant
trait Portlet
class Inlet
class Outlet
class Relationship
class SagaStep
class Schema
class State
class Term
class User
trait WithMetaData
Show all

The root of the containment hierarchy, corresponding roughly to a level about a file.

The root of the containment hierarchy, corresponding roughly to a level about a file.

Value parameters

contents

The sequence top level definitions contained by this root container

Attributes

Companion
object
Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
object Root

Attributes

Companion
class
Source
AST.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Root.type
case class Router(loc: At) extends StreamletShape

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

The definition of a Saga based on inputs, outputs, and the set of SagaSteps involved in the saga.

The definition of a Saga based on inputs, outputs, and the set of SagaSteps involved in the saga. Sagas define a computing action based on a variety of related commands that must all succeed atomically or have their effects undone.

Value parameters

contents

The definitional content for this Context

id

The name of the saga

input

A definition of the aggregate input values needed to invoke the saga, if any.

loc

The location of the Saga definition

output

A definition of the aggregate output values resulting from invoking the saga, if any.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class SagaRef(loc: At, pathId: PathIdentifier) extends Reference[Saga]

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Reference[Saga]
trait RiddlValue
class Object
trait Matchable
class Any
Show all

The definition of one step in a saga with its undo step and example.

The definition of one step in a saga with its undo step and example.

Value parameters

brief

A brief description (one sentence) for use in documentation

description

An optional description of the saga action

doStatements

The command to be done.

id

The name of the SagaAction

loc

The location of the saga action definition

undoStatements

The command that undoes doStatements

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

The repository schema defined as an identifier of the schema, a general kind of intended schema, and the representation of the schema as data node types (vertices, tables, vectors, etc.), a list of named connections between pairs of the data nodes (foreign keys, parent/child, arbitrary graph nodes, etc.), and indices on specific fields of the data nodes.

The repository schema defined as an identifier of the schema, a general kind of intended schema, and the representation of the schema as data node types (vertices, tables, vectors, etc.), a list of named connections between pairs of the data nodes (foreign keys, parent/child, arbitrary graph nodes, etc.), and indices on specific fields of the data nodes.

Value parameters

data

A list of the named primary data nodes (tables, vectors, vertices)

id

The name of this schema

indices

A list of fields in the ((data)) or ((links) that are considered indexed for faster retrieval

links

A list of named relations between primary data nodes

loc

The location at which the schema occurs

schemaKind

One of the RepositorySchemaKinds for a general sense of the repository intention

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A interaction where a User selects an command generating item

A interaction where a User selects an command generating item

Value parameters

brief

A description of this interaction step

from

The user providing the input

loc

The location of the interaction in the source

to

The input definition that receives the input

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Interaction
trait WithMetaData
trait RiddlValue
class Object
trait Matchable
class Any
Show all

An TwoReferenceInteraction between a Definition and itself

An TwoReferenceInteraction between a Definition and itself

Value parameters

brief

A brief description of the interaction for documentation purposes

description

A full description of the interaction for documentation purposes

from

A reference to a Definition from which the relationship extends and to which it returns.

loc

The location at which the interaction occurs

relationship

A textual description of the relationship

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Interaction
trait WithMetaData
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A GenericInteraction that involves sending a message between the interacting components

A GenericInteraction that involves sending a message between the interacting components

Value parameters

brief

A brief description of this interaction

description

A full description of this interaction

from

The definition that originates the interaction

loc

The location of the interaction definition

message

The message that is sent to the to component

to

A Reference to the Processor that receives the sent message

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Interaction
trait WithMetaData
trait RiddlValue
class Object
trait Matchable
class Any
Show all

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

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Sequence(loc: At, of: TypeExpression) extends TypeExpression

A type expression for a sequence of some other type expression

A type expression for a sequence of some other type expression

Value parameters

loc

Where this type expression occurs in the source code

of

The type expression of the sequence's elements

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

An interaction expression that specifies that each contained expression should be executed in strict sequential order

An interaction expression that specifies that each contained expression should be executed in strict sequential order

Value parameters

brief

A brief description of the sequence group

contents

The interactions to execute in sequence

description

A longer description of the sequence

loc

Location of the sequence

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Interaction
trait WithMetaData
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Set(loc: At, of: TypeExpression) extends TypeExpression

A mathematical set of some other type of value

A mathematical set of some other type of value

Value parameters

loc

Where the type expression occurs in the source

of

The type of the elements of the set.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A statement that sets a value of a field

A statement that sets a value of a field

Value parameters

field

The field that is the target of the value change

loc

THe locaiton of the statement

value

A description of the value to set as a LiteralString

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all

An interaction where an User receives output

An interaction where an User receives output

Value parameters

brief

A brief description of this interaction

from

The output received

loc

The locaiton of the interaction in the source

relationship

THe name of the relationship

to

THe user that receives the output

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Interaction
trait WithMetaData
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class ShownBy(loc: At, urls: Seq[URL]) extends RiddlValue

An element of a Use Case that links it to an external resource

An element of a Use Case that links it to an external resource

Value parameters

loc

The location at which the ShownBy occurs

urls

The list of URLs by which the Use Case is shown

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A simple container for utility purposes in code.

A simple container for utility purposes in code. The parser never returns one of these

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Sink(loc: At) extends StreamletShape

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Source(loc: At) extends StreamletShape

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A cardinality type expression that indicates another type expression as having a specific range of instances

A cardinality type expression that indicates another type expression as having a specific range of instances

Value parameters

loc

The location of the one-or-more cardinality

max

The maximum number of items

min

The minimum number of items

typeExp

The type expression that is indicated with a cardinality of one or more.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Cardinality
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Split(loc: At) extends StreamletShape

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Represents a state of an entity.

Represents a state of an entity. A State defines the shape of the entity's state when it is active. The MorphAction can cause the active state of an entity to change. Consequently the state of an entity can change its value (mutable) and they shape of that value.

Value parameters

brief

A brief description (one sentence) for use in documentation

description

An optional description of the state.

id

The name of the state definition

loc

The location of the state definition

typ

A reference to a type definition that provides the range of values that the state may assume.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class StateRef(loc: At, pathId: PathIdentifier) extends Reference[State]

A reference to an entity's state definition

A reference to an entity's state definition

Value parameters

loc

The location of the state reference

pathId

The path identifier of the referenced state definition

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Reference[State]
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait Statement extends RiddlValue

Base trait of all Statements that can occur in OnClauses

Base trait of all Statements that can occur in OnClauses

Attributes

Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
case class StopStatement(loc: At) extends Statement

A statement that terminates the On Clause

A statement that terminates the On Clause

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Definition of a Streamlet.

Definition of a Streamlet. A computing element for processing data from Inlets to Outlets. A processor's processing is specified by free text statements in Handlers. Streamlets come in various shapes: Source, Sink, Flow, Merge, Split, and Router depending on how many inlets and outlets they have

Value parameters

contents

The definitional content for this Context

id

The name of the processor

loc

The location of the Processor definition

shape

The shape of the processor's inputs and outputs

Attributes

Source
AST.scala
Supertypes

A reference to an context's projector definition

A reference to an context's projector definition

Value parameters

loc

The location of the state reference

pathId

The path identifier of the referenced projector definition

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait StreamletShape extends RiddlValue

Attributes

Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Flow
class Merge
class Router
class Sink
class Source
class Split
class Void
Show all

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Meta
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class String_(loc: At, min: Option[Long], max: Option[Long]) extends PredefinedType

A type expression for values of arbitrary string type, possibly bounded by length.

A type expression for values of arbitrary string type, possibly bounded by length.

Value parameters

loc

The location of the Strng type expression

max

The maximum length of the string (default: MaxInt)

min

The minimum length of the string (default: 0)

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A vector, table, or array of homogeneous cells.

A vector, table, or array of homogeneous cells.

Value parameters

dimensions

The size of the dimensions of the table. There can be as many dimensions as needed.

loc

Where the type expression occurs in the source

of

The type of the elements of the table

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A interaction where and User provides input

A interaction where and User provides input

Value parameters

brief

A description of this interaction step

from

The user providing the input

loc

The location of the interaction in the source

to

The input definition that receives the input

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Interaction
trait WithMetaData
trait RiddlValue
class Object
trait Matchable
class Any
Show all

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

loc

The location of the tell action

msg

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

processorRef

The processor to which the message is directed

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A predefined type expression for the SI Base Unit for Temperature (Kelvin)

A predefined type expression for the SI Base Unit for Temperature (Kelvin)

Value parameters

loc

The location of the mass type expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A term definition for the glossary

A term definition for the glossary

Value parameters

brief

The short definition of the term

description

The longer definition of the term.

id

The term being defined

loc

The At at which this glossary term occurs

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class Time(loc: At) extends TimeType

A predefined type expression for a clock time with hours, minutes, seconds.

A predefined type expression for a clock time with hours, minutes, seconds.

Value parameters

loc

The location of the time type expression.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait TimeType
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class TimeStamp(loc: At) extends TimeType

A predefined type expression for a timestamp that records the number of milliseconds from the epoch.

A predefined type expression for a timestamp that records the number of milliseconds from the epoch.

Value parameters

loc

The location of the timestamp

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait TimeType
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait TimeType extends PredefinedType

Attributes

Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Show all
Known subtypes
class Date
class DateTime
class Duration
class Time
class TimeStamp
Show all

One abstract step in an Interaction between things.

One abstract step in an Interaction between things. The set of case classes associated with this sealed trait provide more type specificity to these three fields.

Attributes

Source
AST.scala
Supertypes
trait Interaction
trait WithMetaData
trait RiddlValue
class Object
trait Matchable
class Any
Show all
Known subtypes

A type definition which associates an identifier with a type expression.

A type definition which associates an identifier with a type expression.

Value parameters

brief

A brief description (one sentence) for use in documentation

description

An optional description of the type.

id

The name of the type being defined

loc

The location of the type definition

typEx

The type expression of the type being defined

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case object TypeCase extends AggregateUseCase

An enumerator value to identify undistinguished aggregates

An enumerator value to identify undistinguished aggregates

Attributes

Source
AST.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
TypeCase.type
sealed trait TypeExpression extends RiddlValue

Base trait of an expression that defines a type

Base trait of an expression that defines a type

Attributes

Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Aggregation
class Alternation
trait Cardinality
class OneOrMore
class Optional
class ZeroOrMore
class Graph
class Mapping
trait NumericType
class Bool
class Enumeration
class Integer
class Natural
class Number
class RangeType
class Whole
class Current
class Decimal
class Length
class Luminosity
class Mass
class Mole
class Real
class Temperature
class Abstract
class Blob
class Currency
class Location
class Nothing
class Pattern
class String_
trait TimeType
class Date
class DateTime
class Duration
class Time
class TimeStamp
class URI
class UUID
class UniqueId
class UserId
class Replica
class Sequence
class Set
class Table
Show all

A reference to a type definition

A reference to a type definition

Value parameters

keyword

The keyword used to designate the type at the point of reference

loc

The location in the source where the reference to the type is made

pathId

The path identifier of the reference type

Attributes

Companion
object
Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Reference[Type]
trait RiddlValue
class Object
trait Matchable
class Any
Show all
object TypeRef

Attributes

Companion
class
Source
AST.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
TypeRef.type
case class ULIDAttachment(loc: At, ulid: ULID) extends Meta, WithIdentifier

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Meta
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class URI(loc: At, scheme: Option[LiteralString]) extends PredefinedType

A predefined type expression for a Uniform Resource Locator of a specific schema.

A predefined type expression for a Uniform Resource Locator of a specific schema.

Value parameters

loc

The location of the URL type expression

scheme

The scheme to which the URL is constrained.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class URLDescription(loc: At, url: URL) extends Description

An URL based implementation of Description that provides the description in a Markdown file

An URL based implementation of Description that provides the description in a Markdown file

Value parameters

loc

The location in the parse source where this description occurs

url

The URL for the file content that is the description.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Description
trait Meta
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class UUID(loc: At) extends PredefinedType

A predefined type expression for a universally unique identifier as defined by the Java Virtual Machine.

A predefined type expression for a universally unique identifier as defined by the Java Virtual Machine.

Value parameters

loc

The location of the UUID type expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A type expression for values that ensure a unique identifier for a specific entity.

A type expression for values that ensure a unique identifier for a specific entity.

Value parameters

entityPath

The path identifier of the entity type

loc

The location of the unique identifier type expression

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

The definition of a Jacobsen Use Case RIDDL defines these epics by allowing a linkage between the user and RIDDL applications or bounded contexts.

The definition of a Jacobsen Use Case RIDDL defines these epics by allowing a linkage between the user and RIDDL applications or bounded contexts.

Value parameters

contents

The interactions between users and system components that define the use case.

id

The unique identifier for this use case

loc

Where in the source this use case occurs

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Parent
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all

An User (Role) who is the initiator of the user story.

An User (Role) who is the initiator of the user story. Users may be persons or machines

Value parameters

brief

A brief description of the user

description

A longer description of the user and its role

id

The name (role) of the user

is_a

What kind of thing the user is

loc

The location of the user in the source

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait WithMetaData
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class UserId(loc: At) extends PredefinedType

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all
case class UserRef(loc: At, pathId: PathIdentifier) extends Reference[User]

A reference to an User using a path identifier

A reference to an User using a path identifier

Value parameters

loc

THe location of the User in the source code

pathId

The path identifier that locates the User

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Reference[User]
trait RiddlValue
class Object
trait Matchable
class Any
Show all

An agile user story definition in the usual "As a {role} I want {capability} so that {benefit}" style.

An agile user story definition in the usual "As a {role} I want {capability} so that {benefit}" style.

Value parameters

benefit

The benefit of that utilization

capability

The capability the user wishes to utilize

loc

Location of the user story

user

The user, or instigator, of the story.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

An GenericInteraction that is vaguely written as a textual description

An GenericInteraction that is vaguely written as a textual description

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Interaction
trait WithMetaData
trait RiddlValue
class Object
trait Matchable
class Any
Show all

The base class of the primary, or vital, definitions.

The base class of the primary, or vital, definitions. Most of the important definitions are derivatives of this sealed trait. All vital definitions contain comments, documentation, options, authors that defined it, include statements, and term definitions.

Type parameters

CT

The type of the contents of the Vital Definition which must be rooted in RiddlValue

Attributes

Source
AST.scala
Supertypes
trait WithMetaData
trait WithOptions[CT]
trait WithComments[CT]
trait WithIncludes[CT]
trait WithTypes[CT]
trait BranchDefinition[CT]
trait Parent
trait Container[CT]
trait Definition
trait RiddlValue
class Object
trait Matchable
class Any
Show all
Known subtypes
class Domain
class Epic
class Function
class Module
trait Processor[CT]
class Adaptor
class Application
class Context
class Entity
class Projector
class Repository
class Streamlet
class Saga
Show all
case class Void(loc: At) extends StreamletShape

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait NumericType
trait RiddlValue
class Object
trait Matchable
class Any
Show all
sealed trait WithAdaptors[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define Adaptors

Base trait to use in any Definition that can define Adaptors

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Context
sealed trait WithApplications[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define Applications

Base trait to use in any Definition that can define Applications

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Domain
sealed trait WithAuthors[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define Authors

Base trait to use in any Definition that can define Authors

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Domain
class Root
sealed trait WithComments[CV <: ContentValues] extends Container[CV]

A trait that includes the comments field to extract the comments from the contents

A trait that includes the comments field to extract the comments from the contents

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Aggregation
class Root
trait VitalDefinition[CT]
class Domain
class Epic
class Function
class Module
trait Processor[CT]
class Adaptor
class Application
class Context
class Entity
class Projector
class Repository
class Streamlet
class Saga
Show all
sealed trait WithConnectors[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define Connectors

Base trait to use in any Definition that can define Connectors

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Context
sealed trait WithConstants[CV <: ContentValues] extends Container[CV]

Base trait to use in any definition that can define a constant

Base trait to use in any definition that can define a constant

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
trait Processor[CT]
class Adaptor
class Application
class Context
class Entity
class Projector
class Repository
class Streamlet
Show all
sealed trait WithContexts[CV <: ContentValues] extends Container[CV]

Base trait to use in a Domain to define the bounded Context it contains

Base trait to use in a Domain to define the bounded Context it contains

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Domain
sealed trait WithDomains[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define Domains

Base trait to use in any Definition that can define Domains

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Domain
class Module
class Root
sealed trait WithEntities[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define Entitys

Base trait to use in any Definition that can define Entitys

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Context
sealed trait WithEpics[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define Epics

Base trait to use in any Definition that can define Epics

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Domain
sealed trait WithFunctions[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define a Function

Base trait to use in any Definition that can define a Function

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Function
trait Processor[CT]
class Adaptor
class Application
class Context
class Entity
class Projector
class Repository
class Streamlet
Show all
sealed trait WithGroups[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define a Group

Base trait to use in any Definition that can define a Group

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Application
sealed trait WithHandlers[CV <: ContentValues] extends Container[CV]

Base trait to use in any Processor because they define Handlers

Base trait to use in any Processor because they define Handlers

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
trait Processor[CT]
class Adaptor
class Application
class Context
class Entity
class Projector
class Repository
class Streamlet
Show all
sealed trait WithIdentifier extends RiddlValue

A trait that includes an id field and various methods to support it.

A trait that includes an id field and various methods to support it. This is used by Definition and any other thing that needs to be identified by name.

Attributes

Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
trait Definition
class Enumerator
class Field
class Method
class Author
class Connector
class Constant
class Invariant
trait Portlet
class Inlet
class Outlet
class Relationship
class SagaStep
class Schema
class State
class Term
class User
trait Parent
trait BranchDefinition[CV]
class Group
class Handler
class Input
class Nebula
trait OnClause
class Output
class Root
class Type
class UseCase
trait VitalDefinition[CT]
class Domain
class Epic
class Function
class Module
trait Processor[CT]
class Adaptor
class Application
class Context
class Entity
class Projector
class Repository
class Streamlet
class Saga
Show all
sealed trait WithIncludes[CV <: ContentValues] extends Container[CV]

Added to definitions that support includes

Added to definitions that support includes

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Root
trait VitalDefinition[CT]
class Domain
class Epic
class Function
class Module
trait Processor[CT]
class Adaptor
class Application
class Context
class Entity
class Projector
class Repository
class Streamlet
class Saga
Show all
sealed trait WithInlets[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define an Inlet

Base trait to use in any Definition that can define an Inlet

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Streamlet
sealed trait WithInputs[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define a Output

Base trait to use in any Definition that can define a Output

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Group
class Input
sealed trait WithInvariants[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define an invariant

Base trait to use in any Definition that can define an invariant

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
trait Processor[CT]
class Adaptor
class Application
class Context
class Entity
class Projector
class Repository
class Streamlet
Show all
sealed trait WithMetaData extends RiddlValue

Attributes

Source
AST.scala
Supertypes
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
sealed trait WithModules[CV <: ContentValues] extends Container[CV]

Base trait to use anywhere that can contain Modules

Base trait to use anywhere that can contain Modules

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Module
class Root
sealed trait WithOptions[CV <: ContentValues] extends Container[CV]

Base trait that can be used in any definition that takes options and ensures the options are defined, can be queried, and formatted.

Base trait that can be used in any definition that takes options and ensures the options are defined, can be queried, and formatted.

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Adaptor
class Entity
class Projector
class Repository
trait VitalDefinition[CT]
class Domain
class Epic
class Function
class Module
trait Processor[CT]
class Application
class Context
class Streamlet
class Saga
Show all
sealed trait WithOutlets[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define an Outlet

Base trait to use in any Definition that can define an Outlet

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Streamlet
sealed trait WithOutputs[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define a Output

Base trait to use in any Definition that can define a Output

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Group
class Output
sealed trait WithProjectors[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define Projectors

Base trait to use in any Definition that can define Projectors

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Context
sealed trait WithRepositories[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define Repositorys

Base trait to use in any Definition that can define Repositorys

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Context
sealed trait WithSagaSteps[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define SagaSteps

Base trait to use in any Definition that can define SagaSteps

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Saga
sealed trait WithSagas[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define Sagas

Base trait to use in any Definition that can define Sagas

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Context
class Domain
sealed trait WithShownBy[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define ShownBys

Base trait to use in any Definition that can define ShownBys

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Epic
class Group
sealed trait WithStatements[CV <: ContentValues] extends Container[CV]

Base trait to use to define the AST.Statements that form the body of a Function or OnClause

Base trait to use to define the AST.Statements that form the body of a Function or OnClause

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
sealed trait WithStates[CV <: ContentValues] extends Container[_]

Base trait to use in any Definition that can define a State

Base trait to use in any Definition that can define a State

Attributes

Source
AST.scala
Supertypes
trait Container[_]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Entity
sealed trait WithStreamlets[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define Streamlets

Base trait to use in any Definition that can define Streamlets

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Context
trait Processor[CT]
class Adaptor
class Application
class Entity
class Projector
class Repository
class Streamlet
Show all
sealed trait WithTypes[CV <: ContentValues] extends Container[CV]

Base trait of any definition that is a container and contains types

Base trait of any definition that is a container and contains types

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Domain
class Function
trait VitalDefinition[CT]
class Epic
class Module
trait Processor[CT]
class Adaptor
class Application
class Context
class Entity
class Projector
class Repository
class Streamlet
class Saga
Show all
sealed trait WithUseCases[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define UseCases

Base trait to use in any Definition that can define UseCases

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Epic
sealed trait WithUsers[CV <: ContentValues] extends Container[CV]

Base trait to use in any Definition that can define Users

Base trait to use in any Definition that can define Users

Attributes

Source
AST.scala
Supertypes
trait Container[CV]
trait RiddlValue
class Object
trait Matchable
class Any
Known subtypes
class Domain

A statement that describes a write to a repository

A statement that describes a write to a repository

Value parameters

keyword

The keyword used to color the nature of teh write operation (e.g. update, append, etc.)

loc

The location of the statement in the model

to

The TypeRef to the component of the Repository

what

A description of the data that should be written to the repository

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Statement
trait RiddlValue
class Object
trait Matchable
class Any
Show all

A cardinality type expression that indicates another type expression as having zero or more instances.

A cardinality type expression that indicates another type expression as having zero or more instances.

Value parameters

loc

The location of the zero-or-more cardinality

typeExp

The type expression that is indicated with a cardinality of zero or more.

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait Cardinality
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Attributes

Source
AST.scala
Supertypes
trait Serializable
trait Product
trait Equals
trait TimeType
trait RiddlValue
class Object
trait Matchable
class Any
Show all

Types

type AdaptorContents = OccursInProcessor | Include[OccursInAdaptor]

Type of definitions that occur in an Adaptor with Include

Type of definitions that occur in an Adaptor with Include

Attributes

Source
AST.scala

Attributes

Source
AST.scala
type ApplicationContents = OccursInApplication | Include[OccursInApplication]

Type of definitions that occur in an Application with Include

Type of definitions that occur in an Application with Include

Attributes

Source
AST.scala

Attributes

Source
AST.scala

The kinds of things that are valid content, either immediate or future

The kinds of things that are valid content, either immediate or future

Attributes

Source
AST.scala

A frequently used type alias for a Seq of RiddlValue

A frequently used type alias for a Seq of RiddlValue

Attributes

Source
AST.scala

Type of definitions that occur in a Context with Include

Type of definitions that occur in a Context with Include

Attributes

Source
AST.scala

Attributes

Source
AST.scala

Attributes

Source
AST.scala

Type of definitions that occur in a Domain with Include

Type of definitions that occur in a Domain with Include

Attributes

Source
AST.scala
type EntityContents = OccursInEntity | Include[OccursInEntity]

Type of definitions that occur in an Entity with Include

Type of definitions that occur in an Entity with Include

Attributes

Source
AST.scala
type EpicContents = OccursInEpic | Include[OccursInEpic]

Type of definitions that occur in an Epic with Include

Type of definitions that occur in an Epic with Include

Attributes

Source
AST.scala
type FunctionContents = OccursInFunction | Include[OccursInFunction]

Type of definitions that occur in a Function, with Include

Type of definitions that occur in a Function, with Include

Attributes

Source
AST.scala

Type of definitions that occur in a Handler

Type of definitions that occur in a Handler

Attributes

Source
AST.scala

Type of definitions that occur in a InteractionContainer

Type of definitions that occur in a InteractionContainer

Attributes

Source
AST.scala

Things that can occur in the "With" section of a leaf definition

Things that can occur in the "With" section of a leaf definition

Attributes

Source
AST.scala
type ModuleContents = OccursInModule | Include[OccursInModule]

Type of definitions that can occur in a Module

Type of definitions that can occur in a Module

Attributes

Source
AST.scala

THe list of RiddlValues that are not Definitions for excluding them in match statements

THe list of RiddlValues that are not Definitions for excluding them in match statements

Attributes

Source
AST.scala

The list of definitions to which a reference cannot be made

The list of definitions to which a reference cannot be made

Attributes

Source
AST.scala

Type of definitions that occur in a Context without Include

Type of definitions that occur in a Context without Include

Attributes

Source
AST.scala

Type of definitions that occur in a Domain without Include

Type of definitions that occur in a Domain without Include

Attributes

Source
AST.scala

Type of definitions that occur in a Group

Type of definitions that occur in a Group

Attributes

Source
AST.scala

Type of definitions that occur in an Input

Type of definitions that occur in an Input

Attributes

Source
AST.scala

Type of definitions that occur in an Output

Type of definitions that occur in an Output

Attributes

Source
AST.scala

Type of definitions that occur within all Processor types

Type of definitions that occur within all Processor types

Attributes

Source
AST.scala

Type of definitions that occurs within all Vital Definitions

Type of definitions that occurs within all Vital Definitions

Attributes

Source
AST.scala

A mutable stack of Parent[?] for keeping track of the parent hierarchy

A mutable stack of Parent[?] for keeping track of the parent hierarchy

Attributes

Source
AST.scala
type Parents = Seq[Parent]

A simple sequence of Parents from the closest all the way up to the Root

A simple sequence of Parents from the closest all the way up to the Root

Attributes

Source
AST.scala
type ProjectorContents = OccursInProjector | Include[OccursInProjector]

Type of definitions that occur in a Projector with Include

Type of definitions that occur in a Projector with Include

Attributes

Source
AST.scala
type RepositoryContents = OccursInRepository | Include[OccursInRepository]

Type of definitions that occur in a Repository with Include

Type of definitions that occur in a Repository with Include

Attributes

Source
AST.scala

The kind of thing that can be returned by PathId Resolution Pass optionally providing the referent and its Parental context, or None

The kind of thing that can be returned by PathId Resolution Pass optionally providing the referent and its Parental context, or None

Attributes

Source
AST.scala

The root is a module that can have other modules

The root is a module that can have other modules

Attributes

Source
AST.scala
type SagaContents = OccursInSaga | Include[OccursInSaga]

Type of definitions that occur in a Saga with Include

Type of definitions that occur in a Saga with Include

Attributes

Source
AST.scala

Type of definitions that occur in a block of Statement

Type of definitions that occur in a block of Statement

Attributes

Source
AST.scala
type StreamletContents = OccursInStreamlet | Include[OccursInStreamlet]

Type of definitions that occur in a Streamlet with Include

Type of definitions that occur in a Streamlet with Include

Attributes

Source
AST.scala

Type of definitions that occur in a Type

Type of definitions that occur in a Type

Attributes

Source
AST.scala

Type of definitions that occur in a UseCase

Type of definitions that occur in a UseCase

Attributes

Source
AST.scala

Value members

Concrete methods

A utility function for getting the kind of a type expression.

A utility function for getting the kind of a type expression.

Value parameters

te

The type expression to examine

Attributes

Returns

A string indicating the kind corresponding to te

Source
AST.scala

Find the authors for some definition

Find the authors for some definition

Value parameters

defn

The definition whose AST.Authors we are seeking

parents

The parents of the definition whose AST.Authors we are seeking

Attributes

Returns

The list of AST.Authors of definition

Source
AST.scala

Attributes

Source
AST.scala

Get all the applications defined in a domain even if they are in includes of that domain

Get all the applications defined in a domain even if they are in includes of that domain

Value parameters

domain

The domain whose applications should be returned

Attributes

Returns

A Seq of AST.Application expressed as a AST.Contents extension

Source
AST.scala

get all the authors defined in a domain even if they are in includes of that domain

get all the authors defined in a domain even if they are in includes of that domain

Value parameters

domain

The domain to examine for authors

Attributes

Returns

A Seq of AST.Author expressed as a AST.Contents extension

Source
AST.scala

get all the authors defined in the root node even if they are in includes

get all the authors defined in the root node even if they are in includes

Value parameters

root

The domain to examine for entities

Attributes

Returns

A Seq of AST.Author expressed as a AST.Contents extension

Source
AST.scala

Get the bounded contexts defined in a domain even if they are in includes of that domain

Get the bounded contexts defined in a domain even if they are in includes of that domain

Value parameters

domain

The domain whose contexts should be returned

Attributes

Returns

A Seq of Context expressed as a AST.Contents extension

Source
AST.scala

Get all the first level nested domains of a domain even if they are in include statements

Get all the first level nested domains of a domain even if they are in include statements

Value parameters

domain

The parent AST.Domain whose subdomains will be returned

Attributes

Returns

The subdomains of the provided domain as a AST.Contents extension

Source
AST.scala

get all the entities defined in a context even if they are in includes of that domain

get all the entities defined in a context even if they are in includes of that domain

Value parameters

context

The domain to examine for entities

Attributes

Returns

A Seq of AST.Entity expressed as a AST.Contents extension

Source
AST.scala

get all the epics defined in a domain even if they are in includes of that domain

get all the epics defined in a domain even if they are in includes of that domain

Value parameters

domain

The domain to examine for epics

Attributes

Returns

A scala.Seq of AST.Epic expressed as a AST.Contents extension

Source
AST.scala

Get all the top level domain definitions even if they are in include statements

Get all the top level domain definitions even if they are in include statements

Value parameters

root

The model's AST.Root node.

Attributes

Returns

A Seq of AST.Domains as a AST.Contents extension

Source
AST.scala

get all the Authors defined in a Domain node even if they are in includes

get all the Authors defined in a Domain node even if they are in includes

Value parameters

domain

The domain to examine for entities

Attributes

Returns

A Seq of AST.Author expressed as a AST.Contents extension

Source
AST.scala

Get the AST.User definitions found at the AST.Root level or in its AST.Includes

Get the AST.User definitions found at the AST.Root level or in its AST.Includes

Value parameters

root

The AST.Root node to examine

Attributes

Returns

A Seq of AST.User expressed as a AST.Contents extension

Source
AST.scala

Extensions

Extensions

extension [CV <: ContentValues](container: ArrayBuffer[CV])

find the elements of the Contents that are Definitions

find the elements of the Contents that are Definitions

Attributes

Source
AST.scala

Extract the elements of the Contents that are the type of the type parameter T

Extract the elements of the Contents that are the type of the type parameter T

Type parameters

T

THe kind of RiddlValue sought in the Contents

Attributes

Returns

The Seq of type T found in the Contents

Source
AST.scala

Find the first element of the Contents that has the provided name

Find the first element of the Contents that has the provided name

Attributes

Source
AST.scala

Find the first element of the Contents that

Find the first element of the Contents that

Attributes

Source
AST.scala
def includes: Seq[Include[_]]

Returns the Include elements of Contents

Returns the Include elements of Contents

Attributes

Source
AST.scala

find the elemetns of the Contents that are Parents

find the elemetns of the Contents that are Parents

Attributes

Source
AST.scala

Returns the elememts of the Contents that are Processors

Returns the elememts of the Contents that are Processors

Attributes

Source
AST.scala
def toSeq: Seq[CV]

The extension of a Seq of RiddlValue for ease of access to the contents of the Seq

The extension of a Seq of RiddlValue for ease of access to the contents of the Seq

Attributes

Source
AST.scala

Returns the elements of the Contents that are VitalDefinitions

Returns the elements of the Contents that are VitalDefinitions

Attributes

Source
AST.scala
extension (ds: DefinitionStack)

Attributes

Source
AST.scala

Attributes

Source
AST.scala

Attributes

Source
AST.scala

Attributes

Source
AST.scala
extension (optLit: Option[LiteralString])
def format: String

An extension to an scala.Option] that makes extracting the content of the LiteralString easier.

An extension to an scala.Option] that makes extracting the content of the LiteralString easier.

Attributes

Returns

The content of the formatted LiteralString or "N/A" if it is not available

Source
AST.scala
extension (ps: ParentStack)

Convert the mutable ParentStack into an immutable Parents Seq

Convert the mutable ParentStack into an immutable Parents Seq

Attributes

Source
AST.scala
extension [CV <: ContentValues](sequence: Seq[CV])

Attributes

Source
AST.scala

Attributes

Source
AST.scala