Class

mimir.algebra

PrimitiveValue

Related Doc: package algebra

Permalink

sealed abstract class PrimitiveValue extends LeafExpression with Serializable

Slightly more specific base type for constant terms. PrimitiveValue also acts as a boxing type for constants in Mimir.

Linear Supertypes
Serializable, Serializable, LeafExpression, Expression, ExpressionConstructors, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. PrimitiveValue
  2. Serializable
  3. Serializable
  4. LeafExpression
  5. Expression
  6. ExpressionConstructors
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def asBool: Boolean

    Permalink

    Convert the current object into a boolean or throw a TypeException if not possible

  2. abstract def asDateTime: DateTime

    Permalink

    Convert the current object into a DateTime or throw a TypeException if not possible

  3. abstract def asDouble: Double

    Permalink

    Convert the current object into a double or throw a TypeException if not possible

  4. abstract def asInterval: Period

    Permalink

    return the contents of the variable as just an object.

  5. abstract def asLong: Long

    Permalink

    Convert the current object into a long or throw a TypeException if not possible

  6. abstract def asString: String

    Permalink

    Convert the current object into a string or throw a TypeException if not possible.

    Convert the current object into a string or throw a TypeException if not possible. Note the difference between this and toString. asString returns the content, while toString returns a representation of the primitive value itself. An overt example of this is: val temp = StringPrimitive('foo') println(temp.asString) // Returns "foo" println(temp.toString) // Returns "'foo'" Note the extra quotes. If you ever see a problem involving strings with too many nested quotes, your problem is probably with asString

  7. abstract def payload: AnyRef

    Permalink

    return the contents of the variable as just an object.

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def add(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  5. def and(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  6. def asFloat: Float

    Permalink

    Convert the current object into a float or throw a TypeException if not possible

  7. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  8. def asInt: Int

    Permalink

    Convert the current object into an int or throw a TypeException if not possible

  9. def bitAnd(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  10. def bitOr(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  11. def children: List[Expression]

    Permalink

    Return all of the children of the current tree node

    Return all of the children of the current tree node

    Definition Classes
    LeafExpressionExpression
  12. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  13. def div(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  14. def eq(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  15. def eq(other: Double): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  16. def eq(other: Int): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  17. def eq(other: String): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  18. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  19. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  20. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  21. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  22. def getType: Type

    Permalink
  23. def gt(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  24. def gt(other: Double): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  25. def gt(other: Long): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  26. def gte(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  27. def gte(other: Double): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  28. def gte(other: Long): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  29. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  30. def in(other: Seq[Expression]): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  31. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  32. def isNull: Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  33. def lt(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  34. def lt(other: Double): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  35. def lt(other: Long): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  36. def lte(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  37. def lte(other: Double): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  38. def lte(other: Long): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  39. def mult(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  40. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  41. def neq(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  42. def neq(other: Double): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  43. def neq(other: Int): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  44. def neq(other: String): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  45. def not: Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  46. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  47. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  48. def or(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  49. def rebuild(c: Seq[Expression]): Expression

    Permalink

    Return a new instance of the same object, but with the children replaced with the provided list.

    Return a new instance of the same object, but with the children replaced with the provided list. The list must be of the same size returned by children. This is mostly to facilitate recur, below

    Definition Classes
    LeafExpressionExpression
  50. def recur(f: (Expression) ⇒ Expression): Expression

    Permalink

    Perform a recursive rewrite.

    Perform a recursive rewrite. The following pattern is pretty common throughout Mimir: def replaceFooWithBar(e:Expression): Expression = e match { case Foo(a, b, c, ...) => Bar(a, b, c, ...) case _ => e.recur(replaceFooWithBar(_)) } Note how specific rewrites are applied to specific patterns in the tree, and recur is used to ignore/descend through every other class of object

    Definition Classes
    Expression
  51. def shiftLeft(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  52. def shiftRight(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  53. def sub(other: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  54. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  55. def thenElse(thenClause: Expression)(elseClause: Expression): Expression

    Permalink
    Definition Classes
    ExpressionConstructors
  56. def toExpression: Expression

    Permalink

    Return this

    Return this

    Definition Classes
    ExpressionExpressionConstructors
  57. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  58. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  59. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  60. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from LeafExpression

Inherited from Expression

Inherited from ExpressionConstructors

Inherited from AnyRef

Inherited from Any

Ungrouped