Type

org.finos.morphir.universe.ir.Type
See theType companion object
sealed trait Type[+A] extends TypeExpr

Attributes

Companion
object
Graph
Supertypes
trait TypeExpr
class Object
trait Matchable
class Any
Known subtypes
class ExtensibleRecord[A]
class Function[A]
class Record[A]
class Reference[A]
class Tuple[A]
class Unit[A]
class Variable[A]
Show all
Self type
Type[A]

Members list

Type members

Types

type AttributesType <: A

Value members

Abstract methods

override def attributes: A

Attributes

Definition Classes
def tag: Int

Concrete methods

def ??(doc: String): Documented[Type[A]]
final def collectReferences: Set[FQName]
final def collectVariables: Set[Name]
final def eraseAttributes: UType
final def exists(f: PartialFunction[Type[A], Any]): Boolean
final def find[Z](f: PartialFunction[Type[A], Z]): Option[Z]
def findAll[Z](f: PartialFunction[Type[A], Z]): List[Z]
def fold[A1 >: A](z: A1)(f: (A1, A1) => A1): A1
def fold[Z](unitCase0: A => Z, variableCase0: (A, Name) => Z, extensibleRecordCase0: (A, Name, List[Field[Z]]) => Z, functionCase0: (A, Z, Z) => Z, recordCase0: (A, List[Field[Z]]) => Z, referenceCase0: (A, FQName, List[Z]) => Z, tupleCase0: (A, List[Z]) => Z): Z
final def foldContext[C, A1 >: A, Z](context: C)(folder: TypeFolder[C, A1, Z]): Z
final def foldDown[Z](z: Z)(f: (Z, Type[A]) => Z): Z
final def foldDownSome[Z](z: Z)(f: PartialFunction[(Z, Type[A]), Z]): Z
final def foldLeft[Z](z: Z)(f: (Z, A) => Z): Z
final def foldLeftSome[Z](z: Z)(f: PartialFunction[(Z, A), Z]): Z
final def foldRight[Z](z: Z)(f: (A, Z) => Z): Z
final def foldUp[Z](z: Z)(f: (Type[A], Z) => Z): Z
final def foldUpSome[Z](z: Z)(f: PartialFunction[(Type[A], Z), Z]): Z
final def isIntrinsic: Boolean
final def isReference: Boolean
final def map[B](f: A => B): Type[B]
def mapAttributes[B](f: A => B): Type[B]
final def satisfies(check: PartialFunction[Type[A], Boolean]): Boolean
override def toString: String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

Attributes

Returns

a string representation of the object.

Definition Classes
Any
final def transformReferenceName(f: FQName => FQName): Type[A]

Uses the specified function to map the FQName of any type references to another FQName.

Uses the specified function to map the FQName of any type references to another FQName.

Attributes

Concrete fields

lazy val fieldCount: Int
lazy val size: Long