trait ValueSpecification extends AnyRef
Specification of values. (Using the classic terminology by Strachey.)
- Alphabetic
 - By Inheritance
 
- ValueSpecification
 - AnyRef
 - Any
 
- Hide All
 - Show All
 
- Public
 - All
 
Type Members
- 
      
      
      
        
      
    
      
        
        trait
      
      
        EValue extends AnyRef
      
      
      
Expressible values, the ones that can result from evaluation of expressions.
Expressible values, the ones that can result from evaluation of expressions.
In TIP, all values are expressible.
 - 
      
      
      
        
      
    
      
        
        trait
      
      
        FunValue extends EValue
      
      
      
Functions: expressible and storable, but not denotable.
 - 
      
      
      
        
      
    
      
        
        trait
      
      
        IntValue extends EValue
      
      
      
Integers: expressible and storable, but not denotable.
 - 
      
      
      
        
      
    
      
        
        type
      
      
        Location = ReferenceValue
      
      
      
Denotable values, the ones that represent memory locations.
Denotable values, the ones that represent memory locations.
In TIP those are references to variables or heap cells.
 - 
      
      
      
        
      
    
      
        
        trait
      
      
        NullValue extends EValue
      
      
      
Null: expressible and storable, but not denotable.
 - 
      
      
      
        
      
    
      
        
        trait
      
      
        RecordValue extends EValue
      
      
      
Record values: expressible and storable, but not denotable.
 - 
      
      
      
        
      
    
      
        
        trait
      
      
        ReferenceValue extends EValue
      
      
      
Reference: expressible, storable and denotable.
 - 
      
      
      
        
      
    
      
        
        type
      
      
        Value = EValue
      
      
      
Storable values, the ones that that can be stored in mutable variables or heap cells.
Storable values, the ones that that can be stored in mutable variables or heap cells.
Storable values are generally a subset of expressible ones; in TIP they are the same.
 
Abstract Value Members
- 
      
      
      
        
      
    
      
        abstract 
        def
      
      
        constInt(i: Int): IntValue
      
      
      
Makes am integer value from a literal.
 - 
      
      
      
        
      
    
      
        abstract 
        def
      
      
        divideInt(x: IntValue, y: IntValue): IntValue
      
      
      
The
/operator on integer values. - 
      
      
      
        
      
    
      
        abstract 
        def
      
      
        eqq(x: EValue, y: EValue): IntValue
      
      
      
The
==operator on arbitrary values. - 
      
      
      
        
      
    
      
        abstract 
        def
      
      
        eqqInt(x: IntValue, y: IntValue): Boolean
      
      
      
Equality of integer values.
 - 
      
      
      
        
      
    
      
        abstract 
        def
      
      
        greatThanInt(x: IntValue, y: IntValue): IntValue
      
      
      
The
>=operator on integer values. - 
      
      
      
        
      
    
      
        abstract 
        def
      
      
        minusInt(x: IntValue, y: IntValue): IntValue
      
      
      
The
-operator on integer values. - 
      
      
      
        
      
    
      
        abstract 
        def
      
      
        mkFun(fun: AFunDeclaration): FunValue
      
      
      
Makes a function value from a function declaration in the program code.
 - 
      
      
      
        
      
    
      
        abstract 
        def
      
      
        mkRecord(fields: Map[String, EValue]): RecordValue
      
      
      
Makes a new record value.
 - 
      
      
      
        
      
    
      
        abstract 
        def
      
      
        newLoc(): ReferenceValue
      
      
      
Produces a fresh location.
 - 
      
      
      
        
      
    
      
        abstract 
        def
      
      
        nullValue: NullValue
      
      
      
The null value.
 - 
      
      
      
        
      
    
      
        abstract 
        def
      
      
        plusInt(x: IntValue, y: IntValue): IntValue
      
      
      
Thr
+operator on integer values. - 
      
      
      
        
      
    
      
        abstract 
        def
      
      
        returnLoc: ReferenceValue
      
      
      
The reserved location for storing return values.
 - 
      
      
      
        
      
    
      
        abstract 
        def
      
      
        timesInt(x: IntValue, y: IntValue): IntValue
      
      
      
The
*operator on integer values. 
Concrete Value Members
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        !=(arg0: Any): Boolean
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        ##(): Int
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        ==(arg0: Any): Boolean
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        asInstanceOf[T0]: T0
      
      
      
- Definition Classes
 - Any
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        clone(): AnyRef
      
      
      
- Attributes
 - protected[lang]
 - Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... ) @native() @IntrinsicCandidate()
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        eq(arg0: AnyRef): Boolean
      
      
      
- Definition Classes
 - AnyRef
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        equals(arg0: Any): Boolean
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        getClass(): Class[_]
      
      
      
- Definition Classes
 - AnyRef → Any
 - Annotations
 - @native() @IntrinsicCandidate()
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        hashCode(): Int
      
      
      
- Definition Classes
 - AnyRef → Any
 - Annotations
 - @native() @IntrinsicCandidate()
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        isInstanceOf[T0]: Boolean
      
      
      
- Definition Classes
 - Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        ne(arg0: AnyRef): Boolean
      
      
      
- Definition Classes
 - AnyRef
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        notify(): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @native() @IntrinsicCandidate()
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        notifyAll(): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @native() @IntrinsicCandidate()
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        synchronized[T0](arg0: ⇒ T0): T0
      
      
      
- Definition Classes
 - AnyRef
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        toString(): String
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        wait(arg0: Long, arg1: Int): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... )
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        wait(arg0: Long): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... ) @native()
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        wait(): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... )
 
 
Deprecated Value Members
- 
      
      
      
        
      
    
      
        
        def
      
      
        finalize(): Unit
      
      
      
- Attributes
 - protected[lang]
 - Definition Classes
 - AnyRef
 - Annotations
 - @throws( classOf[java.lang.Throwable] ) @Deprecated
 - Deprecated