trait Link extends ModuleOrLink
atomic MMT morphism, unifies views (which are modules) and structures (which are declarations)
The declarations in the body are assignments, which are 1) Constants, whose name is the qualified name (always starts with ComplexStep) of a domain Constant and whose definiens is codomain Term or 2) or accordingly with DeclaredStructures with definiens
- Source
- Link.scala
- Alphabetic
- By Inheritance
- Link
- ModuleOrLink
- HasDefiniens
- ContainerElement
- MutableElementContainer
- ElementContainer
- ContentElement
- StructuralElement
- NamedElement
- Content
- ClientProperties
- HasMetaData
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
-
abstract
def
dfC: TermContainer
- Definition Classes
- HasDefiniens
-
abstract
val
feature: String
the kind of declaration, e.g., "constant"
the kind of declaration, e.g., "constant"
- Definition Classes
- ContentElement → StructuralElement
-
abstract
def
fromC: TermContainer
the domain of the link
-
abstract
def
getComponents: List[DeclarationComponent]
returns all term components of this elements
returns all term components of this elements
- Definition Classes
- StructuralElement
-
abstract
def
getInnerContext: Context
the context of all declarations in this body
the context of all declarations in this body
- Definition Classes
- ModuleOrLink
-
abstract
def
isImplicit: Boolean
true if this link is implicit
-
abstract
def
name: LocalName
local name relative to the parent element or namespace
local name relative to the parent element or namespace
- Definition Classes
- ContentElement → NamedElement
-
abstract
def
namePrefix: LocalName
the prefix used when translating declarations along this link
-
abstract
def
outerString: String
header as a string (without definiens)
header as a string (without definiens)
- Attributes
- protected
- Definition Classes
- ModuleOrLink
-
abstract
def
parent: ComponentParent
the containing knowledge item, a URL if none
the containing knowledge item, a URL if none
- Definition Classes
- StructuralElement
-
abstract
def
path: ContentPath
the MMT URI of the element
the MMT URI of the element
- Definition Classes
- ContentElement → StructuralElement
-
abstract
def
toC: AbstractTermContainer
the codomain of the link (mutable for views but not structures)
-
abstract
def
toNode: Node
XML representation
XML representation
- Definition Classes
- Content
-
abstract
def
toTerm: Term
this element as a module expression
this element as a module expression
- Definition Classes
- ModuleOrLink → ContentElement
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
add(d: Declaration, at: AddPosition = AtEnd): Unit
adds a named declaration, throws exception if name already declared
adds a named declaration, throws exception if name already declared
- d
declaration to add
- at
the position where to add, at end by default this throws an errors if a declaration for that name already exists; exception: if the two declarations are equivalent, the old one is overridden
- Definition Classes
- ModuleOrLink → MutableElementContainer
-
def
addAfterNarrative(d: Declaration, after: LocalName): Unit
like add, but treats the second argument as the name of a NarrativeElement
like add, but treats the second argument as the name of a NarrativeElement
- Definition Classes
- ModuleOrLink
-
def
asDocument: Document
the narrative structure
the narrative structure
- Definition Classes
- ModuleOrLink
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
lazy val
clientProperty: ListMap[URI, Any]
- Definition Classes
- ClientProperties
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
codomainAsContext: Context
the codomain as a context; pre: same as
to
-
def
compatible(that: StructuralElement): Boolean
two StructuralElement's are compatible if they have the same type, same Path, and agree in all parts that are TermContainer's
two StructuralElement's are compatible if they have the same type, same Path, and agree in all parts that are TermContainer's
- Definition Classes
- StructuralElement
-
def
declares(name: LocalName): Boolean
true iff a declaration for a name is present
true iff a declaration for a name is present
- Definition Classes
- ModuleOrLink
-
def
delete(name: LocalName): Option[Declaration]
delete a named declaration (does not have to exist)
delete a named declaration (does not have to exist)
- returns
the deleted declaration
- Definition Classes
- ModuleOrLink → MutableElementContainer
-
def
df: Option[Term]
- Definition Classes
- HasDefiniens
-
def
dfNode: Seq[Node] with AbstractSeq[Node] with Serializable
- Definition Classes
- HasDefiniens
-
def
domain: List[LocalName]
the list of names of all declarations
the list of names of all declarations
- Definition Classes
- ModuleOrLink → ElementContainer
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
equivalentTo(that: StructuralElement): Boolean
logically equivalent: compares headerInfo, components, and declarations
logically equivalent: compares headerInfo, components, and declarations
- Definition Classes
- StructuralElement
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
foreachComponent(f: (CPath, ComponentContainer) ⇒ Unit): Unit
recursively applies a function to all components in this element (in declaration order)
recursively applies a function to all components in this element (in declaration order)
- Definition Classes
- ContentElement
-
def
foreachDeclaration(f: (ContentElement) ⇒ Unit): Unit
recursively applies a function to all declarations in this element (in declaration order)
recursively applies a function to all declarations in this element (in declaration order)
- Definition Classes
- ContentElement
-
def
from: Term
the domain of this link; pre: must have be given explicitly or have been inferred
-
def
get(name: LocalName): Declaration
- Definition Classes
- ElementContainer
-
def
getAllIncludes: List[IncludeData]
like getIncludes but also with includes of parametric theories and their instantiations
like getIncludes but also with includes of parametric theories and their instantiations
- Definition Classes
- Link → ModuleOrLink
-
def
getAllIncludesWithSelf: List[IncludeData]
Get all transitive-reflexive inclusions.
Get all transitive-reflexive inclusions.
- Definition Classes
- ModuleOrLink
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
getComponent(k: ComponentKey): Option[ComponentContainer]
returns a specific component if present
returns a specific component if present
- Definition Classes
- StructuralElement
-
def
getComponentContext(k: ComponentKey): Context
like getComponent but returns the additional context (in addition to the context of the element) of the component, empty by default, override as needed unspecified if the component does not exist
like getComponent but returns the additional context (in addition to the context of the element) of the component, empty by default, override as needed unspecified if the component does not exist
- Definition Classes
- StructuralElement
-
def
getDeclarations: List[Declaration]
the list of declarations in narrative order, includes generated declarations
the list of declarations in narrative order, includes generated declarations
- Definition Classes
- ModuleOrLink → ElementContainer → ContentElement → StructuralElement
-
def
getDeclarationsBefore(n: LocalName): List[Declaration]
- Definition Classes
- ElementContainer
-
def
getDeclarationsElaborated: List[Declaration]
the list of declarations using elaborated declarations where possible these are: primitive elements: includes, constants other elements if they have not been fully elaborated
the list of declarations using elaborated declarations where possible these are: primitive elements: includes, constants other elements if they have not been fully elaborated
- Definition Classes
- ContainerElement
-
def
getMetaDataNode: NodeSeq
- Definition Classes
- HasMetaData
-
def
getMostSpecific(name: LocalName): Option[(Declaration, LocalName)]
- Definition Classes
- ModuleOrLink → ElementContainer
-
def
getO(name: LocalName): Option[Declaration]
retrieve a declaration
retrieve a declaration
- Definition Classes
- ModuleOrLink → ElementContainer
-
def
getO(name: String): Option[Declaration]
same as get(LocalName(name))
same as get(LocalName(name))
- Definition Classes
- ElementContainer
-
def
getOrigin: Origin
- Definition Classes
- StructuralElement
-
def
getPrimitiveDeclarations: List[Declaration]
the list of declarations in the order of addition, excludes generated declarations
the list of declarations in the order of addition, excludes generated declarations
- Definition Classes
- ContainerElement
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
headerInfo: HeaderInfo
header information of this elements includes the MMT types (e.g., domain, codomain of links) but not the logical types of constants
header information of this elements includes the MMT types (e.g., domain, codomain of links) but not the logical types of constants
- Definition Classes
- StructuralElement
-
def
headerNodes: Seq[Node]
common inner nodes: definiens (metadata is part of document)
common inner nodes: definiens (metadata is part of document)
- Attributes
- protected
- Definition Classes
- ModuleOrLink
-
def
implicitString: String
- Attributes
- protected
-
def
innerNodes: NodeSeq
getPrimitiveDeclarations, with narrative structure
getPrimitiveDeclarations, with narrative structure
- Attributes
- protected
- Definition Classes
- ModuleOrLink
-
def
innerNodesElab: List[Node]
getDeclarationsElaborated, without narrative structure
getDeclarationsElaborated, without narrative structure
- Attributes
- protected
- Definition Classes
- ModuleOrLink
-
def
innerString: String
body as a string
body as a string
- Definition Classes
- ModuleOrLink
-
def
isDeclared(name: LocalName): Boolean
- Definition Classes
- ElementContainer
-
def
isEmpty: Boolean
true iff no declarations present
true iff no declarations present
- Definition Classes
- ModuleOrLink
-
def
isGenerated: Boolean
- Definition Classes
- StructuralElement
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
merge(that: StructuralElement): Unit
merge all properties of 'that' into 'this' except for components and declarations
merge all properties of 'that' into 'this' except for components and declarations
- Definition Classes
- StructuralElement
-
val
metadata: MetaData
- Definition Classes
- HasMetaData
-
def
modulePath: MPath
path if seen as a module
path if seen as a module
- Definition Classes
- ModuleOrLink
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
reorder(ln: LocalName): Unit
moves a declaration to the end of its section (if the relDocHome of ln has changed, it is also moved to the new section) also moves all subsequent ln/X declarations (and updates their relDocHome)
moves a declaration to the end of its section (if the relDocHome of ln has changed, it is also moved to the new section) also moves all subsequent ln/X declarations (and updates their relDocHome)
- Definition Classes
- ModuleOrLink → MutableElementContainer
-
def
selfInclude: IncludeData
Get an IncludeData referencing from as the domain and this very link as the definiens (via OMMOD(modulePath)).
Get an IncludeData referencing from as the domain and this very link as the definiens (via OMMOD(modulePath)).
- Definition Classes
- Link → ModuleOrLink
-
def
setOrigin(o: Origin): Unit
- Definition Classes
- StructuralElement
-
val
statements: HashMap[LocalName, Declaration]
the set of named statements, indexed by name if a statement has an alternativeName, it occurs twice in this map
the set of named statements, indexed by name if a statement has an alternativeName, it occurs twice in this map
- Attributes
- protected
- Definition Classes
- ModuleOrLink
-
def
streamInnerNodes(rh: RenderingHandler): Unit
- Definition Classes
- ModuleOrLink
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
to: Term
the codomain of this link; pre: must have been given explicitly or have been inferred
-
def
toNode(rh: RenderingHandler): Unit
by default, this prints out toNode
by default, this prints out toNode
potentially large StructuralElements should override it with a memory-efficient implementation
- Definition Classes
- Content
-
def
toString(): String
outerString, definiens, innerString
outerString, definiens, innerString
- Definition Classes
- ModuleOrLink → AnyRef → Any
-
def
translateDf(translator: Translator, context: Context): TermContainer
- Definition Classes
- HasDefiniens
-
def
update(s: Declaration): Unit
updates a named declaration (preserving the order)
updates a named declaration (preserving the order)
- Definition Classes
- ModuleOrLink → MutableElementContainer
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()