Package

morphir.ir.Package
object Package

Generated based on IR.Package

Attributes

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

Members list

Type members

Classlikes

final case class Definition[Ta, Va](modules: Map[ModuleName, AccessControlled[Definition[Ta, Va]]])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
final case class Specification[Ta](modules: Map[ModuleName, Specification[Ta]])

Attributes

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

Types

type PackageName = Path

Value members

Concrete methods

def definitionToSpecification[Ta, Va](_def: Definition[Ta, Va]): Specification[Ta]
def emptyDefinition[Ta, Va]: Definition[Ta, Va]
def eraseDefinitionAttributes[Ta, Va](_def: Definition[Ta, Va]): Definition[Unit, Unit]
def lookupModuleDefinition[Ta, Va](modulePath: Path)(packageDef: Definition[Ta, Va]): Maybe[Definition[Ta, Va]]
def lookupModuleSpecification[Ta](modulePath: Path)(packageSpec: Specification[Ta]): Maybe[Specification[Ta]]
def lookupTypeSpecification[Ta](modulePath: Path)(localName: Name)(packageSpec: Specification[Ta]): Maybe[Specification[Ta]]
def lookupValueDefinition[Ta, Va](modulePath: Path)(localName: Name)(packageDef: Definition[Ta, Va]): Maybe[Definition[Ta, Va]]
def lookupValueSpecification[Ta](modulePath: Path)(localName: Name)(packageSpec: 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]
def modulesOrderedByDependency(packageName: PackageName)(packageDef: Definition[Unit, Type[Unit]]): Result[CycleDetected[ModuleName], List[(ModuleName, AccessControlled[Definition[Unit, Type[Unit]]])]]
def selectModules[Ta, Va](modulesToInclude: Set[ModuleName])(packageName: PackageName)(packageDef: Definition[Ta, Va]): Definition[Ta, Va]

Implicits

Implicits

implicit def moduleNameOrdering: Ordering[ModuleName]