Projector

com.reactific.riddl.language.ast.Definitions.Projector
case class Projector(loc: At, id: Identifier, authors: Seq[AuthorRef], options: Seq[ProjectorOption], includes: Seq[Include[ProjectorDefinition]], types: Seq[Type], constants: Seq[Constant], inlets: Seq[Inlet], outlets: Seq[Outlet], handlers: Seq[Handler], functions: Seq[Function], invariants: Seq[Invariant], terms: Seq[Term], brief: Option[LiteralString], description: Option[Description]) extends Processor[ProjectorOption, ProjectorDefinition], ContextDefinition, WithTypes

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

authors

The authors of this definition

brief

A brief description of this Projector

description

A detailed description of this Projector

handlers

Specifies how to handle

id

The unique identifier for this Projector

loc

Location in the source of the Projector

options

Options that can be used by the translators

terms

Definitions of terms about this Projector

types

The type definitions necessary to construct the query results

Attributes

See also

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

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

Graph
Supertypes

Members list

Value members

Concrete methods

override def maturity: Int

Compute the 'maturity' of a definition.

Compute the 'maturity' of a definition. Maturity is a score with no maximum but with scoring rules that target 100 points per definition. Maturity is broken down this way:

  • has a description - up to 50 points depending on # of non empty lines

  • has a brief description - 5 points

  • has options specified - 5 points

  • has terms defined -

  • has an author in or above the definition - 5 points \-

  • definition specific things: 0.65

Attributes

Returns
Definition Classes

Inherited methods

Attributes

Inherited from:
BrieflyDescribedValue
def completeness: (Int, Int)

Compute the completeness of this definition.

Compute the completeness of this definition. Vital definitions should have options, terms, and authors but includes are optional. Incompleteness is signalled by child definitions that are empty.

Attributes

Returns

A numerator and denominator for percent complete

Inherited from:
VitalDefinition

Attributes

Inherited from:
DescribedValue
override def format: String

Format the node to a string

Format the node to a string

Attributes

Definition Classes
Inherited from:
WithOptions

Attributes

Inherited from:
WithOptions
override def hasAuthors: Boolean

Attributes

Definition Classes
Inherited from:
WithAuthors
override def hasDefinitions: Boolean

Attributes

Definition Classes
Inherited from:
Definition

Attributes

Inherited from:
WithOptions
override def hasOptions: Boolean

Attributes

Definition Classes
Inherited from:
WithOptions

Attributes

Inherited from:
WithTerms
override def hasTypes: Boolean

Attributes

Definition Classes
Inherited from:
WithTypes

Attributes

Inherited from:
Definition

Attributes

Inherited from:
Definition
override def isContainer: Boolean

Determine if this node is a container or not

Determine if this node is a container or not

Attributes

Definition Classes
Inherited from:
Container
override def isDefinition: Boolean

Attributes

Definition Classes
Inherited from:
Definition
override def isEmpty: Boolean

determine if this node is empty or not.

determine if this node is empty or not. Non-containers are always empty

Attributes

Definition Classes
Inherited from:
WithOptions

Attributes

Inherited from:
Definition

Attributes

Inherited from:
Container
override def isVital: Boolean

Attributes

Definition Classes
Inherited from:
VitalDefinition
final def nonEmpty: Boolean

Attributes

Inherited from:
RiddlNode

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product

Attributes

Inherited from:
Definition

Concrete fields

lazy override val contents: Seq[ProjectorDefinition]
final val kind: String

Implicits

Inherited implicits

implicit def bool2int(b: Boolean): Int

Implicit conversion of boolean to Int for easier computation of statistics below

Implicit conversion of boolean to Int for easier computation of statistics below

Value parameters

b

The boolean to convert to an Int

Attributes

Returns
Inherited from:
VitalDefinition