diff --git a/model-api-gen-runtime/src/commonMain/kotlin/org/modelix/metamodel/TypedNodeImpl.kt b/model-api-gen-runtime/src/commonMain/kotlin/org/modelix/metamodel/TypedNodeImpl.kt index 14cf5a1514..361fc5ca43 100644 --- a/model-api-gen-runtime/src/commonMain/kotlin/org/modelix/metamodel/TypedNodeImpl.kt +++ b/model-api-gen-runtime/src/commonMain/kotlin/org/modelix/metamodel/TypedNodeImpl.kt @@ -2,13 +2,12 @@ package org.modelix.metamodel import org.modelix.model.api.IConcept import org.modelix.model.api.INode -import org.modelix.model.api.getConcept abstract class TypedNodeImpl(val wrappedNode: INode) : ITypedNode { init { val expected: IConcept = _concept._concept - val actual: IConcept? = unwrap().getConcept() + val actual: IConcept? = unwrap().concept require(actual != null && actual.isSubConceptOf(expected)) { "Concept of node ${unwrap()} expected to be a sub-concept of $expected, but was $actual" } diff --git a/model-api-gen-runtime/src/commonMain/kotlin/org/modelix/metamodel/UnknownConcept.kt b/model-api-gen-runtime/src/commonMain/kotlin/org/modelix/metamodel/UnknownConcept.kt index 5801ec6605..527b6b5b3c 100644 --- a/model-api-gen-runtime/src/commonMain/kotlin/org/modelix/metamodel/UnknownConcept.kt +++ b/model-api-gen-runtime/src/commonMain/kotlin/org/modelix/metamodel/UnknownConcept.kt @@ -7,7 +7,6 @@ import org.modelix.model.api.ILanguage import org.modelix.model.api.INode import org.modelix.model.api.IProperty import org.modelix.model.api.IReferenceLink -import org.modelix.model.api.getConcept import org.modelix.model.area.IArea import kotlin.reflect.KClass @@ -91,7 +90,7 @@ data class UnknownTypedConcept(private val ref: IConcept?) : IConceptOfTypedNode data class UnknownConceptInstance(val node: INode) : ITypedNode { override val _concept: ITypedConcept - get() = UnknownTypedConcept(node.getConcept()) + get() = UnknownTypedConcept(node.concept) override fun unwrap(): INode = node } diff --git a/model-api/src/commonMain/kotlin/org/modelix/model/api/INode.kt b/model-api/src/commonMain/kotlin/org/modelix/model/api/INode.kt index 4233949423..670d77ef2e 100644 --- a/model-api/src/commonMain/kotlin/org/modelix/model/api/INode.kt +++ b/model-api/src/commonMain/kotlin/org/modelix/model/api/INode.kt @@ -307,6 +307,7 @@ fun INode.setReferenceTarget(link: IReferenceLink, target: INodeReference?): Uni fun INode.getPropertyValue(property: IProperty): String? = if (this is INodeEx) getPropertyValue(property) else getPropertyValue(property.key(this)) fun INode.setPropertyValue(property: IProperty, value: String?): Unit = if (this is INodeEx) setPropertyValue(property, value) else setPropertyValue(property.key(this), value) +@Deprecated("use INode.concept", ReplaceWith("concept")) fun INode.getConcept(): IConcept? = getConceptReference()?.resolve() fun INode.getResolvedReferenceTarget(role: String): INode? = getReferenceTargetRef(role)?.resolveIn(getArea()!!) fun INode.getResolvedConcept(): IConcept? = getConceptReference()?.resolve()