GraphMine

graphmine-core / io.github.sof3.graphmine.feature / FeatureNode

FeatureNode

interface FeatureNode<Self : FeatureNode<Self, Inst>, Inst : FeatureNodeInstance<Inst, Self>>

Represents a concrete or abstract concept that can interact with itself or other FeatureNodes, such as an entity, a block, a client or a command.

If the implementation is a singleton, it is recommended that FeatureNode be implemented in the companion object of the corresponding FeatureNodeInstance.

Parameters

Self - the actual class implementing FeatureNode. It is not mandatory to pass the actual instance type, but it is recommended if possible to improve type prediction

Inst - the FeatureNodeInstance class corresponding to Self.

Inheritors

Block data class Block : FeatureNode<Block, BlockInstance>
Represents a block type.
Node companion object Node : FeatureNode<Client.Node, Client>