Companion

object Companion

Functions

Link copied to clipboard

Shorthand for of with every parameter defaulted, i.e. a scope backed by a brand-new, empty Scope and the defaultUnificator unification strategy.

Link copied to clipboard
fun of(scope: Scope = Scope.empty(), termificator: Termificator = Termificator.default(scope), variablesProvider: VariablesProvider = VariablesProvider.of(scope), unificator: Unificator = defaultUnificator): LogicProgrammingScope

Creates a new LogicProgrammingScope backed by scope (a fresh, empty one by default), using termificator to convert plain values into it.unibo.tuprolog.core.Terms, variablesProvider to create fresh variables, and unificator (the defaultUnificator strategy unless stated otherwise) to unify them. If either termificator or variablesProvider is not already backed by scope, it is Termificator.copy/VariablesProvider.copy-ed onto it first, so all three end up sharing the very same Scope instance (a requirement of the returned scope's implementation).

fun of(unificator: Unificator, scope: Scope = Scope.empty(), termificator: Termificator = Termificator.default(scope), variablesProvider: VariablesProvider = VariablesProvider.of(scope)): LogicProgrammingScope

Overload of of taking unificator as its first parameter (rather than its last), so a non-default Unificator can be supplied positionally without naming the argument — as logicProgramming and lp do.