object

mutations_store

Stores mutation definitions for selected types. User extensible by defining objects or categories defining clauses for the mutation/3 predicate and using this object as a hook object for their compilation.

Availability:
logtalk_load(mutations(loader))
Author: Paulo Moura
Version: 0:1:0
Date: 2023-11-23
Compilation flags:
static, context_switching_calls
Implements:
public expanding
Uses:
Remarks:
(none)
Inherited public predicates:

Public predicates

mutation/3

Returns a random mutation of a term into another term of the same type. The input Term is assumed to be valid for the given Type.

Compilation flags:
static
Template:
mutation(Type,Term,Mutation)
Mode and number of proofs:
mutation(@callable,@term,-term) - one

counter/2

Table of the number of mutations available per type.

Compilation flags:
static
Template:
counter(Type,N)
Mode and number of proofs:
counter(?callable,?positive_integer) - zero_or_more

Protected predicates

(no local declarations; see entity ancestors if any)

Private predicates

mutation/4

Returns a random mutation of a term into another term of the same type using mutator N. The input Term is assume to be valid for the given Type.

Compilation flags:
static, multifile
Template:
mutation(Type,N,Term,Mutation)
Mode and number of proofs:
mutation(?callable,?positive_integer,@term,-term) - zero_or_more

counter_/2

Internal counter for the number of mutations available for a given type.

Compilation flags:
dynamic
Template:
counter_(Type,N)
Mode and number of proofs:
counter_(?callable,?positive_integer) - zero_or_more

Operators

(none)

See also

type