graphmine-core / io.github.sof3.graphmine.feature / FeatureEdge
interface FeatureEdge<Node1 :
FeatureNode
<
Node1
,
Inst1
>, Node2 :
FeatureNode
<
Node2
,
Inst2
>, Inst1 :
FeatureNodeInstance
<
Inst1
,
Node1
>, Inst2 :
FeatureNodeInstance
<
Inst2
,
Node2
>>
Represents the implementation of a feature.
FeatureGraph.handle() provides a convenience inline function for implementing this.
See Also
node1 | abstract val node1: Node1 Represents one of the endpoint FeatureNodes. Swapping node1 and node2 does not matter. |
node2 | abstract val node2: Node2 Represents one of the endpoint FeatureNodes. Swapping node1 and node2 does not matter. |
handle | abstract fun handle(inst1: Inst1 , inst2: Inst2 , event: FeatureEvent ): Unit The implementation to handle the FeatureEvent. |
DoubleFeatureHandler | class DoubleFeatureHandler<Node1 : FeatureNode < Node1 , Inst1 >, Inst1 : FeatureNodeInstance < Inst1 , Node1 >, Node2 : FeatureNode < Node2 , Inst2 >, Inst2 : FeatureNodeInstance < Inst2 , Node2 >> : FeatureEdge < Node1 , Node2 , Inst1 , Inst2 > |
SingleFeatureEdge | interface SingleFeatureEdge<Node : FeatureNode < Node , Inst >, Inst : FeatureNodeInstance < Inst , Node >> : FeatureEdge < Node , Node , Inst , Inst > Convenience implementation of self-looping FeatureEdge |