Module

morphir.ir.Module
object Module

Generated based on IR.Module

Attributes

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

Members list

Type members

Classlikes

final case class Definition[Ta, Va](types: Map[Name, AccessControlled[Documented[Definition[Ta]]]], values: Map[Name, AccessControlled[Documented[Definition[Ta, Va]]]], doc: Maybe[String])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
final case class Specification[Ta](types: Map[Name, Documented[Specification[Ta]]], values: Map[Name, Documented[Specification[Ta]]], doc: Maybe[String])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Types

type ModuleName = Path

Value members

Concrete methods

def collectReferences[Ta, Va](moduleDef: Definition[Ta, Va]): Set[FQName]
def collectTypeReferences[Ta, Va](moduleDef: Definition[Ta, Va]): Set[FQName]
def collectValueReferences[Ta, Va](moduleDef: Definition[Ta, Va]): Set[FQName]
def definitionToSpecification[Ta, Va](_def: Definition[Ta, Va]): Specification[Ta]
def dependsOnModules[Ta, Va](moduleDef: Definition[Ta, Va]): Set[QualifiedModuleName]
def emptyDefinition[Ta, Va]: Definition[Ta, Va]
def eraseDefinitionAttributes[Ta, Va](_def: Definition[Ta, Va]): Definition[Unit, Unit]
def lookupTypeSpecification[Ta](localName: Name)(moduleSpec: Specification[Ta]): Maybe[Specification[Ta]]
def lookupValueDefinition[Ta, Va](localName: Name)(moduleDef: Definition[Ta, Va]): Maybe[Definition[Ta, Va]]
def lookupValueSpecification[Ta](localName: Name)(moduleSpec: Specification[Ta]): Maybe[Specification[Ta]]
def mapDefinitionAttributes[Ta, Tb, Va, Vb](tf: Ta => Tb)(vf: Va => Vb)(_def: Definition[Ta, Va]): Definition[Tb, Vb]
def mapSpecificationAttributes[Ta, Tb](tf: Ta => Tb)(spec: Specification[Ta]): Specification[Tb]