class TypeChecker extends tessla.TypedTessla.IdentifierFactory with Translator[tessla.TypedTessla.Specification]

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

Instance Constructors

  1. new TypeChecker(spec: FlatTessla.Specification)

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. def abort(): Nothing
    Attributes
    protected
    Definition Classes
    Translator
  5. def abortOnError(): Unit
    Attributes
    protected
    Definition Classes
    Translator
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def checkLiftability(functionType: TypedTessla.FunctionType): Boolean
  8. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate() @throws( ... )
  9. def declaredType(entry: FlatTessla.VariableEntry): Option[FlatTessla.Type]
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  12. def error(error: TesslaError): Unit
    Attributes
    protected
    Definition Classes
    Translator
  13. val errors: ArrayBuffer[TesslaError]
    Attributes
    protected
    Definition Classes
    Translator
  14. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  15. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  16. def identifierCounter: Long
    Attributes
    protected
    Definition Classes
    IdentifierFactory
  17. def insertInferredType(id: TypedTessla.Identifier, inferredType: TypedTessla.Type, loc: Location): Unit
  18. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  19. def isLiftableMacro(entry: FlatTessla.Expression): Boolean
  20. def isStreamType(typ: TypedTessla.Type): Boolean
  21. def isSubtypeOrEqual(parent: TypedTessla.Type, child: TypedTessla.Type): Boolean
  22. def liftConstant(constant: TypedTessla.Identifier, defs: TypedTessla.Definitions, env: Env, loc: Location): TypedTessla.Identifier
  23. def liftFunctionType(functionType: TypedTessla.FunctionType): TypedTessla.FunctionType
  24. def makeIdentifier(name: String): TypedTessla.Identifier
    Attributes
    protected
    Definition Classes
    IdentifierFactory
  25. def makeIdentifier(): TypedTessla.Identifier
    Attributes
    protected
    Definition Classes
    IdentifierFactory
  26. def makeIdentifier(nameOpt: Option[String]): TypedTessla.Identifier
    Attributes
    protected
    Definition Classes
    IdentifierFactory
  27. def mkTVar(name: String): TypedTessla.TypeParameter
  28. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  29. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  30. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  31. def parameterTypes(mac: FlatTessla.Macro): Seq[FlatTessla.Type]
  32. def processTypeAnnotation(entry: FlatTessla.VariableEntry, env: Env): Unit
  33. def requiredEntries(defs: FlatTessla.Definitions, expression: FlatTessla.Expression): Seq[FlatTessla.VariableEntry]
  34. def requiredEntries(defs: FlatTessla.Definitions, 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.

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

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from AnyRef

Inherited from Any

Ungrouped