DefaultBuiltins

The it.unibo.tuprolog.solve.library.Library of built-in predicates the :solve-streams engine adds on top of CommonBuiltins: this is what it.unibo.tuprolog.solve.streams.StreamsSolverFactory.defaultBuiltins returns, and what a solver built via Solver.streams.solverWithDefaultBuiltins() is loaded with.

These six control-construct predicates need an engine-specific implementation because they interact directly with this engine's Sequence-of-states resolution model (choice points, cut scoping, exception propagation): call/1, catch/3, ','/2 (conjunction), '!'/0 (cut), throw/1 and '\+'/1 (negation as failure). All six are internal PrimitiveWrappers under it.unibo.tuprolog.solve.streams.stdlib.primitive, so they are not directly reachable from outside this module -- go through this DefaultBuiltins library instead.

Properties

Link copied to clipboard
Link copied to clipboard
open override val alias: String
Link copied to clipboard
override val clauses: List<Clause>
Link copied to clipboard
open override val functions: Map<Signature, LogicFunction>
Link copied to clipboard
open override val operators: OperatorSet
Link copied to clipboard
open override val primitives: Map<Signature, Primitive>
Link copied to clipboard

Functions

Link copied to clipboard
open operator fun contains(operator: Operator): Boolean
open operator fun contains(signature: Signature): Boolean
Link copied to clipboard
open operator override fun equals(other: Any?): Boolean
Link copied to clipboard
open fun hasFunction(signature: Signature): Boolean
Link copied to clipboard
open override fun hashCode(): Int
Link copied to clipboard
open fun hasPrimitive(signature: Signature): Boolean
Link copied to clipboard
open fun hasProtected(signature: Signature): Boolean
Link copied to clipboard
open override fun hasRule(signature: Signature): Boolean
Link copied to clipboard
open override fun toString(): String