finos/morphir-elm/18.1.0

NOTE: the latest version is 22.0.2

Formerly Morgan-Stanley/morphir-elm. Search finds this package by either name.

Morphir.Scala.Backend

This module encapsulates the Scala backend. It takes the Morphir IR as the input and returns an in-memory representation of files generated. The consumer is responsible for getting the input IR and saving the output to the file-system.

mapDistribution : Options -> Distribution -> FileMap

Entry point for the Scala backend. It takes the Morphir IR as the input and returns an in-memory representation of files generated.

mapFunctionBody : Distribution -> Definition ta (Type ()) -> Value

Generate Scala for a Morphir function body.

Map a Morphir type to a Scala type.

PackageName
-> Path
-> AccessControlled (Definition ta (Type ()))
-> ( Name, AccessControlled (Documented (Definition ta)) )
-> List (Annotated MemberDecl)

Map a module level type declaration in Morphir to a Scala member declaration.

mapValue : Set Name -> Value ta (Type ()) -> Value

Generate Scala for a value.

Map Fully Qualified name Type Ref

mapFQNameToPathAndName : FQName -> ( Path, Name )

Map a Morphir fully-qualified name to a Scala package path and name.

mapValueName : Name -> String

Map IR value to Scala Value

Options

type alias Options =
{ limitToModules : Maybe (Set ModuleName) }

Placeholder for code generator options. Currently empty.