org.finos.morphir.runtime.sdk

Members list

Type members

Classlikes

object BasicsSDK

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
BasicsSDK.type
object CharSDK

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
CharSDK.type
object DecimalSDK

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
DecimalSDK.type
object DictSDK

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
DictSDK.type
object ListSDK

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
ListSDK.type
object LocalDateSDK

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object LocalTimeSDK

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object MaybeSDK

The "Maybe" SDK functions somewhat differently from ListSDK or others, because Maybe is not handled as a specific RTValue but through the general RTConstructor type. This is because it is treated as such in the IR - Maybe values are initialized with constructors and pattern matched as such.

The "Maybe" SDK functions somewhat differently from ListSDK or others, because Maybe is not handled as a specific RTValue but through the general RTConstructor type. This is because it is treated as such in the IR - Maybe values are initialized with constructors and pattern matched as such.

TODO: This distinction should be refactored away. This entails:

  • Adding RTValue variants for Maybe (and Result, while we're at it)
  • Adding all supporting code for such (coercers + anything else)
  • Adding special cases to the Apply handling for Constructors, to create these special RTValues instead of the general form
  • Adding special cases to Constructor pattern matching to recognize these forms
  • Changing the RTValue to MDM process to reflect the new form
  • In this file:
  • Remove toOption and toMaybe
  • Change the types from RT.ConstructorResult to RT.Maybe
  • Change toOption(arg) calls to arg.value and toMaybe(result) calls to RT.Maybe(result)

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
MaybeSDK.type
object ResultSDK

The "Result" SDK functions somewhat differently from ListSDK or others, because Result is not handled as a specific RTValue but through the general RTConstructor type. This is because it is treated as such in the IR - Result values are initialized with constructors and pattern matched as such.

The "Result" SDK functions somewhat differently from ListSDK or others, because Result is not handled as a specific RTValue but through the general RTConstructor type. This is because it is treated as such in the IR - Result values are initialized with constructors and pattern matched as such.

TODO: This distinction should be refactored away. This entails:

  • Adding RTValue variants for Result
  • Adding all supporting code for such (coercers + anything else)
  • Adding special cases to the Apply handling for Constructors, to create these special RTValues instead of the general form
  • Adding special cases to Constructor pattern matching to recognize these forms
  • Changing the RTValue to MDM process to reflect the new form
  • In this file:
  • Remove toEither and toResult
  • Change the types from RT.ConstructorResult to RT.Result
  • Change toEither(arg) calls to arg.value and toResult(result) calls to RT.Result(result)

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
ResultSDK.type
object SetSDK

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
SetSDK.type
object StringSDK

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
StringSDK.type