AbstractNeighborAction

abstract class AbstractNeighborAction<T>(reaction: NodeReaction<T>, environment: Environment<T, *>, randomGenerator: RandomGenerator) : AbstractRandomizableAction<T>

A local action applied to a neighbor of the node.

Type Parameters

T

concentration type

Inheritors

Constructors

Link copied to clipboard
constructor(reaction: NodeReaction<T>, environment: Environment<T, *>, randomGenerator: RandomGenerator)

Properties

Link copied to clipboard
override val reaction: NodeReaction<T>

The NodeReaction owning this action, hosted by targetNode.

Link copied to clipboard

Functions

Link copied to clipboard
override fun cloneAction(newReaction: Reaction<T>): Action<T>

Creates an equivalent action owned by newReaction, such as a reaction cloned onto a new node. An action targeting the host of its reaction targets the host of newReaction, which must then be a Node; an action targeting any other node keeps its target.

Link copied to clipboard
open override fun execute()

Executes this action on a random neighbor, if the node has any; otherwise, does nothing.

abstract fun execute(neighbor: Node<T>)

Executes this action on neighbor, which is not guaranteed to belong to the neighborhood of targetNode.

Link copied to clipboard
infix fun Action<*>.shouldEqual(other: Action<*>)
Link copied to clipboard
open override fun toString(): String