org.kiama.example.obr

SymbolTable

object SymbolTable extends Environments

Symbol table module containing facilities for creating and manipulating Obr language symbol information.

Source
SymbolTable.scala
Linear Supertypes
Environments, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. SymbolTable
  2. Environments
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. case class ArrayType(size: Int) extends Type with Product with Serializable

    An integer array type.

  2. case class BoolType() extends Type with Product with Serializable

    The Boolean type.

  3. case class Constant(tipe: Type, value: Int) extends Entity with Product with Serializable

    A constant integer entity with the given type and value.

  4. case class EnumType(ident: Identifier) extends Type with Product with Serializable

    A named enumeration type.

  5. case class EnumTypes() extends TypeBase with Product with Serializable

    The following is not an actual type, but it is compatible with every enumeration type - and so is useful when type checking constructs which must take a value of an arbitrary enumeration type.

  6. type Environment = List[Scope]

    Definition Classes
    Environments
  7. case class ExnType() extends Type with Product with Serializable

    The exception type.

  8. case class IntType() extends Type with Product with Serializable

    The integer type.

  9. trait Named extends AnyRef

    Definition Classes
    Environments
  10. trait NamedEntity extends Entity with Named

    Definition Classes
    Environments
  11. case class RecordType(fields: Seq[Identifier]) extends Type with Product with Serializable

    A record type with the given fields.

  12. case class RecordTypes() extends TypeBase with Product with Serializable

    The following is not an actual type, but it is compatible with every record type - and so is useful when type checking constructs which must take a value of an arbitrary record type.

  13. type Scope = Map[String, Entity]

    Definition Classes
    Environments
  14. abstract class Type extends TypeBase

    All genuine types know how much storage in bytes is needed to store a value of their type.

  15. abstract class TypeBase extends AnyRef

    Superclasses of all type representations.

  16. case class UnknownType() extends Type with Product with Serializable

    A type that we don't know anything about.

  17. case class Variable(tipe: Type) extends Entity with Product with Serializable

    A variable entity of the given type.

Value Members

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

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

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

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. val WORDSIZE: Int

    The size in bytes of a word used to store both integer and Boolean values.

  7. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  8. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. def define(env: Environment, i: String, e: Entity): Environment

    Definition Classes
    Environments
  10. def enter(env: Environment): Environment

    Definition Classes
    Environments
  11. final def eq(arg0: AnyRef): Boolean

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

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

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

    Definition Classes
    AnyRef → Any
  15. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  16. def isDefinedInEnv(env: Environment, i: String): Boolean

    Definition Classes
    Environments
  17. def isDefinedInInner(env: Environment, i: String): Boolean

    Definition Classes
    Environments
  18. def isDefinedInOuter(env: Environment, i: String): Boolean

    Definition Classes
    Environments
  19. def isDefinedInScope(scope: Scope, i: String): Boolean

    Definition Classes
    Environments
  20. def isDefinedInScope(env: Environment, i: String): Boolean

    Definition Classes
    Environments
  21. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  22. def leave(env: Environment): Environment

    Definition Classes
    Environments
  23. def lookup(env: Environment, i: String, e: Entity, scope: Boolean): Entity

    Definition Classes
    Environments
  24. val nameCounter: Counter

    Definition Classes
    Environments
  25. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  26. final def notify(): Unit

    Definition Classes
    AnyRef
  27. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  28. val prevLocCounter: Counter

    Counter for previously used location.

  29. def reset(): Unit

    Reset the symbol table.

  30. def resetEnvironments(): Unit

    Definition Classes
    Environments
  31. def rootenv(bindings: (String, Entity)*): Environment

    Definition Classes
    Environments
  32. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  33. def toString(): String

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

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Environments

Inherited from AnyRef

Inherited from Any

Ungrouped