SimpleFiniteEquationSystem

class SimpleFiniteEquationSystem[U, V](val initialBody: U => V, val initialInfl: Relation[U, U], val unknowns: Iterable[U], val inputUnknowns: Iterable[U]) extends BaseFiniteEquationSystem[U, V, SimpleFiniteEquationSystem[U, V]]

Default implementation of a finite equation system.

Value parameters:
initialBody

the initial body of the equation system. Depending of the presence of combos, base assignments or tracers, the initial body is manipulated in order to obtain the real body of the equation system.

initialInfl

the initial influence relation of the equation system. Depending of the presence of combos, the initial relaton is manipulated in order to obtain the real influence relation of the equation system.

inputUnknowns

the unknowns which may be considered the input to this equation system.

unknowns

collection of all unknowns.

Source:
FiniteEquationSystem.scala

Value members

Inherited methods

override def body: U => V

Returns the body of this equation system.

Returns the body of this equation system.

Note:

The body is generated starting from the initial body of the equation system, adding combos, base assignment and tracer according to the requests of the user.

Definition Classes
Inherited from:
BaseEquationSystem
Source:
EquationSystem.scala
override def bodyWithDependencies: U => V

Returns the body with dependencies of the equations system. It is implemented by calling scalafix#withDependencies.

Returns the body with dependencies of the equations system. It is implemented by calling scalafix#withDependencies.

Definition Classes
Inherited from:
BaseEquationSystem
Source:
EquationSystem.scala
override protected def clone(): SimpleFiniteEquationSystem[U, V]

A type-aware clone operation. An equation system is immutable as long as the public interface is concerned, but cloning is used to simplify implementation.

A type-aware clone operation. An equation system is immutable as long as the public interface is concerned, but cloning is used to simplify implementation.

Definition Classes
Inherited from:
BaseEquationSystem
Source:
EquationSystem.scala
override def getMutableAssignment(rho: U => V): MutableAssignment[U, V]

Returns a mutable assignment based on the provided initial assignment.

Returns a mutable assignment based on the provided initial assignment.

Note:

Returns the default mutable assignment assignments.MapBasedMutableAssignment

Definition Classes
Inherited from:
BaseEquationSystem
Source:
EquationSystem.scala
override def infl: Relation[U, U]

The static relation between an unknown x and the unknowns y it influences. If infl(x) does not contain y, it means that apply(rho)(y) \== apply(rho')(y), when rho' = rho[x / eqs(rho)(x)].

The static relation between an unknown x and the unknowns y it influences. If infl(x) does not contain y, it means that apply(rho)(y) \== apply(rho')(y), when rho' = rho[x / eqs(rho)(x)].

Definition Classes
Inherited from:
BaseFiniteEquationSystem
Source:
FiniteEquationSystem.scala
override def withBaseAssignment(baseAssignment: PartialFunction[U, V], op: (V, V) => V): SimpleFiniteEquationSystem[U, V]

Returns the equation system modified with the specified base assignment.

Returns the equation system modified with the specified base assignment.

Definition Classes
Inherited from:
BaseEquationSystem
Source:
EquationSystem.scala
override def withCombos(combos: ComboAssignment[U, V]): SimpleFiniteEquationSystem[U, V]

Returns the equation system modified with the specified combo assignment.

Returns the equation system modified with the specified combo assignment.

Definition Classes
Inherited from:
BaseEquationSystem
Source:
EquationSystem.scala

Returns the equation system with an additional tracer. The tracer contains callbacks which are invoked during body evaluation.

Returns the equation system with an additional tracer. The tracer contains callbacks which are invoked during body evaluation.

Definition Classes
Inherited from:
BaseEquationSystem
Source:
EquationSystem.scala

Inherited fields

protected var optBaseAssignment: Option[(PartialFunction[U, V], (V, V) => V)]

An optional specification for a base assignment we want to add to the equation system.

An optional specification for a base assignment we want to add to the equation system.

Inherited from:
BaseEquationSystem
Source:
EquationSystem.scala
protected var optCombos: Option[ComboAssignment[U, V]]

An optional assignment of combos to the unknowns.

An optional assignment of combos to the unknowns.

Inherited from:
BaseEquationSystem
Source:
EquationSystem.scala
protected var optTracer: Option[EquationSystemTracer[U, V]]

An optional tracer for monitoring the execution of the body.

An optional tracer for monitoring the execution of the body.

Inherited from:
BaseEquationSystem
Source:
EquationSystem.scala