Package

org.scaladebugger.language

models

Permalink

package models

Visibility
  1. Public
  2. All

Type Members

  1. case class Array(elements: Seq[BaseValue]) extends BaseValue with Product with Serializable

    Permalink
  2. trait BaseValue extends Expression

    Permalink
  3. sealed trait CallableFunction extends Function

    Permalink
  4. sealed trait Condition extends Operator

    Permalink
  5. case class Conditional(condition: Expression, trueBranch: Expression, falseBranch: Expression) extends Expression with Product with Serializable

    Permalink
  6. case class Context(currentScope: Scope) extends Product with Serializable

    Permalink

    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

    Permalink
  8. case class Equal(left: Expression, right: Expression) extends Condition with Product with Serializable

    Permalink
  9. trait Expression extends AnyRef

    Permalink
  10. case class ExpressionGroup(expressions: Seq[Expression]) extends Expression with Product with Serializable

    Permalink
  11. sealed trait Function extends BaseValue

    Permalink
  12. case class FunctionCall(expression: Expression, values: Seq[(Identifier, Expression)]) extends Expression with Product with Serializable

    Permalink
  13. case class Greater(left: Expression, right: Expression) extends Condition with Product with Serializable

    Permalink
  14. case class GreaterEqual(left: Expression, right: Expression) extends Condition with Product with Serializable

    Permalink
  15. case class Identifier(name: String, documentation: Option[String] = None) extends NamedExpression with Product with Serializable

    Permalink
  16. case class IncompleteInterpretedFunction(parameters: Seq[Identifier], body: Expression, documentation: Option[String] = None) extends Function with Product with Serializable

    Permalink

    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

    Permalink

    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

    Permalink
  19. case class LessEqual(left: Expression, right: Expression) extends Condition with Product with Serializable

    Permalink
  20. case class Minus(left: Expression, right: Expression) extends Operator with Product with Serializable

    Permalink
  21. case class Modulus(left: Expression, right: Expression) extends Operator with Product with Serializable

    Permalink
  22. case class Multiply(left: Expression, right: Expression) extends Operator with Product with Serializable

    Permalink
  23. trait NamedExpression extends Expression

    Permalink
  24. case class NativeFunction(parameters: Seq[Identifier], implementation: (Map[Identifier, Expression], Scope) ⇒ Expression, documentation: Option[String] = None) extends CallableFunction with Product with Serializable

    Permalink

    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

    Permalink
  26. case class Number(value: Double) extends Primitive with Product with Serializable

    Permalink
  27. sealed trait Operator extends Expression

    Permalink
  28. case class Plus(left: Expression, right: Expression) extends Operator with Product with Serializable

    Permalink
  29. case class PlusPlus(left: Expression, right: Expression) extends Operator with Product with Serializable

    Permalink
  30. sealed trait Primitive extends BaseValue

    Permalink
  31. case class Scope(variables: Map[Identifier, Expression], parent: Option[Scope]) extends Product with Serializable

    Permalink

    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

    Permalink
  33. case class Text(value: String) extends Primitive with Product with Serializable

    Permalink
  34. case class Truth(value: Boolean) extends Primitive with Product with Serializable

    Permalink
  35. case class Variable(identifier: Identifier, value: Expression) extends Expression with Product with Serializable

    Permalink

Value Members

  1. object Context extends Serializable

    Permalink
  2. object Scope extends Serializable

    Permalink
  3. object Undefined extends Primitive with Product with Serializable

    Permalink

Ungrouped