PowerOperations

interface PowerOperations<T> : FieldOps<T>

A context extension to include power operations based on exponentiation.

Parameters

T

the type of element of this structure.

Types

Link copied to clipboard
object Companion

Functions

Link copied to clipboard
abstract fun add(left: T, right: T): T

Addition of two elements.

Link copied to clipboard
open fun binaryOperation(operation: String, left: T, right: T): T

Dynamically invokes a binary operation with the certain name.

Link copied to clipboard
open override fun binaryOperationFunction(operation: String): (T, T) -> T

Dynamically dispatches a binary operation with the certain name.

Link copied to clipboard
open fun bindSymbol(value: String): T

The same as bindSymbolOrNull but throws an error if symbol could not be bound

Link copied to clipboard
open fun bindSymbolOrNull(value: String): T?

Wraps a raw string to T object. This method is designed for three purposes:

Link copied to clipboard
open operator fun T.div(arg: T): T

Division of two elements.

Link copied to clipboard
abstract fun divide(left: T, right: T): T

Division of two elements.

Link copied to clipboard
open fun export(arg: T): T

Export an algebra element, so it could be accessed even after algebra scope is closed. This method must be used on algebras where data is stored externally or any local algebra state is used. By default (if not overridden), exports the object itself.

Link copied to clipboard
open operator fun T.minus(arg: T): T

Subtraction of two elements.

Link copied to clipboard
abstract fun multiply(left: T, right: T): T

Multiplies two elements.

Link copied to clipboard
open operator fun T.plus(arg: T): T

Addition of two elements.

Link copied to clipboard
open infix fun T.pow(pow: Number): T

Raises this value to the power pow.

Link copied to clipboard
abstract fun power(arg: T, pow: Number): T

Raises arg to a power if possible (negative number could not be raised to a fractional power). Throws IllegalArgumentException if not possible.

Link copied to clipboard
open fun sqrt(arg: T): T

Computes the square root of the value arg.

Link copied to clipboard
open operator fun T.times(arg: T): T

Multiplies this element by scalar.

Link copied to clipboard
abstract operator fun T.unaryMinus(): T

The negation of this element.

Link copied to clipboard
open fun unaryOperation(operation: String, arg: T): T

Dynamically invokes a unary operation with the certain name.

Link copied to clipboard
open override fun unaryOperationFunction(operation: String): (T) -> T

Dynamically dispatches a unary operation with the certain name.

Link copied to clipboard
open operator fun T.unaryPlus(): T

Returns this value.

Inheritors

Link copied to clipboard
Link copied to clipboard

Sources

Link copied to clipboard