package models

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. All

Type Members

  1. case class Array (elements: Seq[BaseValue]) extends BaseValue with Product with Serializable
  2. trait BaseValue extends Expression
  3. sealed trait CallableFunction extends Function
  4. sealed trait Condition extends Operator
  5. case class Conditional (condition: Expression, trueBranch: Expression, falseBranch: Expression) extends Expression with Product with Serializable
  6. case class Context (currentScope: Scope) extends Product with Serializable

    Represents the context about the program state at a point in time.

    Represents the context about the program state at a point in time.

    currentScope

    The local scope of the program at a point in time

  7. case class Divide (left: Expression, right: Expression) extends Operator with Product with Serializable
  8. case class Equal (left: Expression, right: Expression) extends Condition with Product with Serializable
  9. trait Expression extends AnyRef
  10. case class ExpressionGroup (expressions: Seq[Expression]) extends Expression with Product with Serializable
  11. sealed trait Function extends BaseValue
  12. case class FunctionCall (expression: Expression, values: Seq[(Identifier, Expression)]) extends Expression with Product with Serializable
  13. case class Greater (left: Expression, right: Expression) extends Condition with Product with Serializable
  14. case class GreaterEqual (left: Expression, right: Expression) extends Condition with Product with Serializable
  15. case class Identifier (name: String, documentation: Option[String] = None) extends NamedExpression with Product with Serializable
  16. case class IncompleteInterpretedFunction (parameters: Seq[Identifier], body: Expression, documentation: Option[String] = None) extends Function with Product with Serializable

    Represents a function created through the interpreter.

    Represents a function created through the interpreter. This implementation is missing the closure that will be filled in elsewhere.

    parameters

    The parameter names for the function

    body

    The body of the interpreted function

    documentation

    Optional documentation to associate with the function

  17. case class InterpretedFunction (parameters: Seq[Identifier], closure: Scope, body: Expression, documentation: Option[String] = None) extends CallableFunction with Product with Serializable

    Represents a function created through the interpreter.

    Represents a function created through the interpreter.

    parameters

    The parameter names for the function

    closure

    The enclosing scope of the function when defined

    body

    The body of the interpreted function

    documentation

    Optional documentation to associate with the function

  18. case class Less (left: Expression, right: Expression) extends Condition with Product with Serializable
  19. case class LessEqual (left: Expression, right: Expression) extends Condition with Product with Serializable
  20. case class Minus (left: Expression, right: Expression) extends Operator with Product with Serializable
  21. case class Modulus (left: Expression, right: Expression) extends Operator with Product with Serializable
  22. case class Multiply (left: Expression, right: Expression) extends Operator with Product with Serializable
  23. trait NamedExpression extends Expression
  24. case class NativeFunction (parameters: Seq[Identifier], implementation: (Map[Identifier, Expression], Scope) ⇒ Expression, documentation: Option[String] = None) extends CallableFunction with Product with Serializable

    Creates a function created outside of the interpreter.

    Creates a function created outside of the interpreter.

    parameters

    The parameter names for the function

    implementation

    The function implementation

    documentation

    Optional documentation to associate with the function

  25. case class NotEqual (left: Expression, right: Expression) extends Condition with Product with Serializable
  26. case class Number (value: Double) extends Primitive with Product with Serializable
  27. sealed trait Operator extends Expression
  28. case class Plus (left: Expression, right: Expression) extends Operator with Product with Serializable
  29. case class PlusPlus (left: Expression, right: Expression) extends Operator with Product with Serializable
  30. sealed trait Primitive extends BaseValue
  31. case class Scope (variables: Map[Identifier, Expression], parent: Option[Scope]) extends Product with Serializable

    Represents a scope within the language containing declared variables as well as the parent scope if it exists.

    Represents a scope within the language containing declared variables as well as the parent scope if it exists.

    variables

    The variables associated with the scope

    parent

    Some scope if a parent exists, otherwise None

  32. case class SkipEval (expression: Expression) extends Expression with Product with Serializable
  33. case class Text (value: String) extends Primitive with Product with Serializable
  34. case class Truth (value: Boolean) extends Primitive with Product with Serializable
  35. case class Variable (identifier: Identifier, value: Expression) extends Expression with Product with Serializable

Value Members

  1. object Context extends Serializable
  2. object Scope extends Serializable
  3. object Undefined extends Primitive with Product with Serializable

Ungrouped