Type

org.finos.morphir.ir.TypeModule.Type
See theType companion object
sealed trait Type[+A] extends Product, Serializable

Attributes

Companion
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
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

Value members

Abstract methods

def attributes: A

Concrete methods

final def ??(doc: String): Documented[Type[A]]
def collectReferences: Set[FQName]
def collectVariables: Set[Name]

Erase the attributes from this type.

Erase the attributes from this type.

Attributes

def exists(f: PartialFunction[Type[A], Any]): Boolean
def fieldCount: Int
def find[Z](f: PartialFunction[Type[A], Z]): Option[Z]
def findAll[Z](f: PartialFunction[Type[A], Z]): List[Z]
def fold[Z](unitCase0: A => Z, variableCase0: (A, Name) => Z)(extensibleRecordCase0: (A, Name, Chunk[Field[Z]]) => Z, functionCase0: (A, Z, Z) => Z, recordCase0: (A, Chunk[Field[Z]]) => Z, referenceCase0: (A, FQName, Chunk[Z]) => Z, tupleCase0: (A, Chunk[Z]) => Z): Z
final def foldContext[C, A1 >: A, Z](context: C)(folder: Folder[C, A1, Z]): Z
final def foldLeft[Z](z: Z)(f: PartialFunction[(Z, Type[A]), Z]): Z
final def map[B](f: A => B): Type[B]
final def mapAttributes[B](f: A => B): Type[B]

An alias for map.

An alias for map.

Attributes

final def mapReferenceName(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

final def satisfies(check: PartialFunction[Type[A], Boolean]): Boolean
final def size: Int
final 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
def write[Context](context: Context)(writer: TypeWriter[Context, A]): Unit
def writeZIO[Context : Tag](writer: TypeWriter[Context, A]): ZIO[Context, Throwable, Unit]

Inherited methods

def canEqual(that: Any): Boolean

Attributes

Inherited from:
Equals
def productArity: Int

Attributes

Inherited from:
Product
def productElement(n: Int): Any

Attributes

Inherited from:
Product
def productElementName(n: Int): String

Attributes

Inherited from:
Product
def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product
def productPrefix: String

Attributes

Inherited from:
Product