c

de.uni_luebeck.isp.tessla

TypeChecker

class TypeChecker extends tessla.TypedTessla.IdentifierFactory with TranslationPhase[tessla.FlatTessla.Specification, tessla.TypedTessla.Specification]

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TypeChecker
  2. TranslationPhase
  3. IdentifierFactory
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new TypeChecker()

Type Members

  1. type Env = Map[FlatTessla.Identifier, TypedTessla.Identifier]

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def checkLiftability(functionType: TypedTessla.FunctionType): Boolean
  6. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. def declaredType(entry: FlatTessla.VariableEntry): Option[FlatTessla.Type]
  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  10. def error(error: TesslaError): Unit
    Definition Classes
    TranslationPhase
  11. val errors: ArrayBuffer[TesslaError]
    Definition Classes
    TranslationPhase
  12. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  14. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  15. def insertInferredType(id: TypedTessla.Identifier, inferredType: TypedTessla.Type, loc: Location): Unit
  16. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  17. def isLiftableMacro(entry: FlatTessla.Expression): Boolean
  18. def isStreamType(typ: TypedTessla.Type): Boolean
  19. def liftConstant(constant: TypedTessla.Identifier, scope: TypedTessla.Scope, env: Env, loc: Location): TypedTessla.Identifier
  20. def liftFunctionType(functionType: TypedTessla.FunctionType): TypedTessla.FunctionType
  21. def makeIdentifier(name: String): TypedTessla.Identifier
    Definition Classes
    IdentifierFactory
  22. def makeIdentifier(): TypedTessla.Identifier
    Definition Classes
    IdentifierFactory
  23. def makeIdentifier(nameOpt: Option[String]): TypedTessla.Identifier
    Definition Classes
    IdentifierFactory
  24. def mkTVar(name: String): TypedTessla.TypeParameter
  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. def parameterTypes(mac: FlatTessla.Macro): Seq[FlatTessla.Type]
  29. def processTypeAnnotation(entry: FlatTessla.VariableEntry, env: Env): Unit
  30. def requiredEntries(scope: FlatTessla.Scope, expression: FlatTessla.Expression): Seq[FlatTessla.VariableEntry]
  31. def requiredEntries(scope: FlatTessla.Scope, entry: FlatTessla.VariableEntry): Seq[FlatTessla.VariableEntry]

    Return all the entries that need to be type inferred before the current entry, i.e.

    Return all the entries that need to be type inferred before the current entry, i.e. all the entries that are used by this entry and do not have an explicit type annotation.

  32. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  33. def toString(): String
    Definition Classes
    AnyRef → Any
  34. def translate(spec: FlatTessla.Specification): Result[TypedTessla.Specification]
    Definition Classes
    TranslationPhase
  35. def translateEntry(entry: FlatTessla.VariableEntry, scope: TypedTessla.Scope, env: Env): TypedTessla.VariableEntry
  36. def translateExpression(expression: FlatTessla.Expression, declaredType: Option[TypedTessla.Type], id: Option[TypedTessla.Identifier], scope: TypedTessla.Scope, env: Env): (TypedTessla.Expression, TypedTessla.Type)
  37. def translateOutStream(stream: FlatTessla.OutStream, scope: TypedTessla.Scope, env: Env): TypedTessla.OutStream
  38. def translateScope(scope: FlatTessla.Scope, parent: Option[TypedTessla.Scope], parentEnv: Env): (TypedTessla.Scope, Env)
  39. def translateScopeWithParents(scope: FlatTessla.Scope): (TypedTessla.Scope, Env)
  40. def translateSpec(spec: FlatTessla.Specification): TypedTessla.Specification
    Definition Classes
    TypeCheckerTranslationPhase
  41. def translateType(typ: FlatTessla.Type, env: Env): TypedTessla.Type
  42. def tryWithDefault[R](default: ⇒ R)(body: ⇒ R): R
    Definition Classes
    TranslationPhase
  43. def typeSubst(expected: TypedTessla.Type, actual: TypedTessla.Type, typeParams: Set[TypedTessla.Identifier], substitutions: Map[TypedTessla.Identifier, TypedTessla.Type], loc: Location): TypedTessla.Type
  44. val typesOfBuiltIns: Map[BuiltIn, TypedTessla.Type]
  45. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  46. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  47. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  48. def warn(loc: Location, message: String): Unit
    Definition Classes
    TranslationPhase
  49. def warn(diagnostic: Diagnostic): Unit
    Definition Classes
    TranslationPhase
  50. val warnings: ArrayBuffer[Diagnostic]
    Definition Classes
    TranslationPhase

Inherited from AnyRef

Inherited from Any

Ungrouped