Value

org.finos.morphir.ir.Value$
object Value extends ValueVersionSpecific

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Value.type

Members list

Type members

Classlikes

final case class Apply[+TA, +VA](attributes: VA, function: Value[TA, VA], argument: Value[TA, VA]) extends Value[TA, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[TA, VA]
class Object
trait Matchable
class Any
Show all
final case class Constructor[+VA](attributes: VA, fullyQualifiedName: FQName) extends Value[Nothing, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[Nothing, VA]
class Object
trait Matchable
class Any
Show all
final case class Definition[+TA, +VA](inputTypes: Chunk[Parameter[TA, VA]], outputType: Type[TA], body: Value[TA, VA])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
final case class Destructure[+TA, +VA](attributes: VA, pattern: Pattern[VA], valueToDestruct: Value[TA, VA], inValue: Value[TA, VA]) extends Value[TA, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[TA, VA]
class Object
trait Matchable
class Any
Show all
final case class Field[+TA, +VA](attributes: VA, subjectValue: Value[TA, VA], fieldName: Name) extends Value[TA, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[TA, VA]
class Object
trait Matchable
class Any
Show all
final case class FieldFunction[+VA](attributes: VA, name: Name) extends Value[Nothing, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[Nothing, VA]
class Object
trait Matchable
class Any
Show all
final case class IfThenElse[+TA, +VA](attributes: VA, condition: Value[TA, VA], thenBranch: Value[TA, VA], elseBranch: Value[TA, VA]) extends Value[TA, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[TA, VA]
class Object
trait Matchable
class Any
Show all
final case class Lambda[+TA, +VA](attributes: VA, argumentPattern: Pattern[VA], body: Value[TA, VA]) extends Value[TA, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[TA, VA]
class Object
trait Matchable
class Any
Show all
sealed case class LetDefinition[+TA, +VA](attributes: VA, valueName: Name, valueDefinition: Definition[TA, VA], inValue: Value[TA, VA]) extends Value[TA, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[TA, VA]
class Object
trait Matchable
class Any
Show all
sealed case class LetRecursion[+TA, +VA](attributes: VA, valueDefinitions: Map[Name, Definition[TA, VA]], inValue: Value[TA, VA]) extends Value[TA, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[TA, VA]
class Object
trait Matchable
class Any
Show all
final case class List[+TA, +VA](attributes: VA, items: Chunk[Value[TA, VA]]) extends Value[TA, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[TA, VA]
class Object
trait Matchable
class Any
Show all
final case class Literal[+VA](attributes: VA, value: Literal) extends Value[Nothing, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[Nothing, VA]
class Object
trait Matchable
class Any
Show all
object Pattern

Attributes

Companion
trait
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
Pattern.type
sealed trait Pattern[+A]

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class AsPattern[A]
class EmptyListPattern[A]
class HeadTailPattern[A]
class LiteralPattern[A]
class TuplePattern[A]
class UnitPattern[A]
class WildcardPattern[A]
Show all
sealed case class PatternMatch[+TA, +VA](attributes: VA, branchOutOn: Value[TA, VA], cases: Chunk[(Pattern[VA], Value[TA, VA])]) extends Value[TA, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[TA, VA]
class Object
trait Matchable
class Any
Show all
final case class Record[+TA, +VA](attributes: VA, fields: Chunk[(Name, Value[TA, VA])]) extends Value[TA, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[TA, VA]
class Object
trait Matchable
class Any
Show all
final case class Reference[+VA](attributes: VA, fullyQualifiedName: FQName) extends Value[Nothing, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[Nothing, VA]
class Object
trait Matchable
class Any
Show all
final case class Specification[+TA](inputs: Chunk[SpecParameter[TA]], outputs: Type[TA])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
final case class Tuple[+TA, +VA](attributes: VA, elements: Chunk[Value[TA, VA]]) extends Value[TA, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[TA, VA]
class Object
trait Matchable
class Any
Show all
final case class Unit[+VA](attributes: VA) extends Value[Nothing, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[Nothing, VA]
class Object
trait Matchable
class Any
Show all
sealed case class UpdateRecord[+TA, +VA](attributes: VA, valueToUpdate: Value[TA, VA], fieldsToUpdate: Map[Name, Value[TA, VA]]) extends Value[TA, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[TA, VA]
class Object
trait Matchable
class Any
Show all
sealed trait Value[+TA, +VA]

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Apply[TA, VA]
class Constructor[VA]
class Destructure[TA, VA]
class Field[TA, VA]
class FieldFunction[VA]
class IfThenElse[TA, VA]
class Lambda[TA, VA]
class LetDefinition[TA, VA]
class LetRecursion[TA, VA]
class List[TA, VA]
class Literal[VA]
class PatternMatch[TA, VA]
class Record[TA, VA]
class Reference[VA]
class Tuple[TA, VA]
class Unit[VA]
class UpdateRecord[TA, VA]
class Variable[VA]
Show all
final case class Variable[+VA](attributes: VA, name: Name) extends Value[Nothing, VA]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Value[Nothing, VA]
class Object
trait Matchable
class Any
Show all

Inherited classlikes

object Parameter

Attributes

Inherited from:
ValueVersionSpecific
Supertypes
class Object
trait Matchable
class Any
object SpecParameter

Attributes

Inherited from:
ValueVersionSpecific
Supertypes
class Object
trait Matchable
class Any

Inherited types

final opaque type Parameter[+TA, +VA]

Attributes

Inherited from:
ValueVersionSpecific
final opaque type SpecParameter[+A]

Attributes

Inherited from:
ValueVersionSpecific

Value members

Concrete methods

def asPattern[A](attributes: A, pattern: Pattern[A], name: Name): Pattern[A]
def tuplePattern[A](attributes: A, elementPatterns: Pattern[A]*): Pattern[A]
def wildcardPattern[A](attributes: A): Pattern[A]