InterfacePointAnalysis

open class InterfacePointAnalysis(val issues: List<IssueReference> = emptyList(), val interfacePoint: InterfacePoint, var usedIn: List<InterfacePoint> = emptyList(), val sources: List<URLReference> = emptyList(), val evaluation: FailureEvaluation? = null, val argument: String? = null, val belongsToSafetyFunction: Boolean? = null) : MetamodelEntity, SafetyAssessment

Analysis of an InterfacePoint (port/service/event/field/method/error/register/ipdu/...).

name is derived from the analyzed point's name followed by " analysis". Read its description and effective ASIL from interfacePoint. These attributes are absent from this constructor and its native exchange schema. The inherited description and ASIL always return null and cannot be overridden; direct Kotlin access to those two properties is a compiler error. The analysis retains its own canonical id and ownership. Record the assessment in evaluation and its engineering reasoning in argument.

Failures and member analyses are modeled as properties inside concrete subclasses to express ownership. A port analysis contains the analyses of its member endpoints, mirroring their Context containment. usedIn references interface points of the analysis parent: the direct parent, or the grandparent when the direct parent has no enabled Analysis. Only one level may be bypassed, and the grandparent must have an enabled Analysis. These authored references also supply ordinary model-check context.

Constructors

Link copied to clipboard
constructor(issues: List<IssueReference> = emptyList(), interfacePoint: InterfacePoint, usedIn: List<InterfacePoint> = emptyList(), sources: List<URLReference> = emptyList(), evaluation: FailureEvaluation? = null, argument: String? = null, belongsToSafetyFunction: Boolean? = null)

Properties

Link copied to clipboard
open override val argument: String?

Engineering reasoning behind evaluation, including why detailed functional failure analysis is not required.

Link copied to clipboard
override val asil: ASIL?
Link copied to clipboard

Whether this interface point contributes to the architected safety functions in the applicable safety concept.

Link copied to clipboard

Identity of the authored Kotlin declaration, independent of its receiving model instance. Inherited declarations retain this provenance while id distinguishes each owning instance.

Link copied to clipboard

Fully-qualified name of the declaring context. Prefers declaringClassNameOverride (set explicitly by source materializers or canonical-ID binding) over declaringClass's captured name; falls back to null if neither is available.

Link copied to clipboard
override val description: String?
Link copied to clipboard
open override val evaluation: FailureEvaluation?

Judgment for this interface-point analysis; null means no evaluation has been recorded.

Link copied to clipboard
val id: String

Fully-qualified unique identifier of this model instance. A member follows its actual owning instance, so two instances of the same user class have distinct member IDs. declarationId retains the common source declaration for navigation and naming rules.

Link copied to clipboard
Link copied to clipboard
open override val issues: List<IssueReference>
Link copied to clipboard
override val name: String?

A derived label; an unnamed interface point leaves the analysis unnamed, too.

Link copied to clipboard

The enclosing element Analysis, including when this analysis is nested inside another interface-point analysis.

Link copied to clipboard

Kotlin val name that holds this entity, scoped to its declaring context. Populated reflectively by WireModel.wireAll in the compiled path, or set directly via bindToSource in the source-materialized path. null until either runs.

Link copied to clipboard
open override val sources: List<URLReference>
Link copied to clipboard

Interface points of the analysis parent that consume or expose this analyzed interface point. The direct parent is bypassed once when its Analysis is absent or Analysis.enabled is false.

Functions

Link copied to clipboard

Binds an authored field or constructor-owned value without replacing its source declaration provenance.

Link copied to clipboard

Registers a child entity declared inside a source-materialized parent.

Link copied to clipboard

Records source-declared uses without changing the target's declaration or owner.

Link copied to clipboard

Binds an entity to an already computed canonical MetamodelEntity.id.

Link copied to clipboard
fun MetamodelEntity.bindToSource(referenceName: String, declaringClassName: String)

Sets the canonical identifiers for an entity that was materialized from source (as opposed to being instantiated from compiled bytecode). Intended for use by PSI / source materializers such as the IDEA plugin.

Link copied to clipboard

Interface-point analyses in declaration order, including analyses nested beneath ports or service groups.

Link copied to clipboard

A decomposed analysis delegates failure and contribution completeness to its member analyses.

Link copied to clipboard

Structural children, including explicit metamodel containment. Relation targets retain their own declaration.

Link copied to clipboard
Link copied to clipboard

Reflectively wires member analyses and declared Failure fields on this IPA's runtime class, stamping each failure with ownerInterfacePointAnalysis = this and referenceName = field.name (the Kotlin val name). Idempotent. Called via WireModel.wireAll after subclass construction.

Generated with STIG