object

# `clauses_reordering(Entity,Predicate,ClauseIndex,Occurrence,PrintMutation)`

- `Entity` - Identifier of the entity being mutated.

- `Predicate` - Predicate or non-terminal indicator selecting clauses to mutate.

- `ClauseIndex` - 1-based clause index selecting which clause is swapped with its successor (last swaps with first).

- `Occurrence` - 1-based clause index selecting which clause is swapped with its successor (last swaps with first).

- `PrintMutation` - Boolean flag to print the original and mutated term plus source location.

Hook object implementing the `clauses_reordering` mutator by reordering the clauses of a non-discontiguous predicate or non-terminal definition.

Availability:
`logtalk_load(mutation_testing(loader))`
Author: Paulo Moura
Version: 1:0:0
Date: 2026-03-20
Compilation flags:
`static, context_switching_calls`
Implements:
`public` expanding
`public` clause_mutator_protocol
Imports:
`public` mutator_common
Uses:
list
Remarks:
(none)
Inherited public predicates:
coverage_clause_mutator/0 goal_expansion/2 mutation/2 reset/0 term_expansion/2

## Public predicates

(no local declarations; see entity ancestors if any)

## Protected predicates

(no local declarations; see entity ancestors if any)

## Private predicates

### `clauses_/1`

Table of parsed clauses.

Compilation flags:
`dynamic`
Template:
`clauses_(Clause)`
Mode and number of proofs:
`clauses_(?clause)` - `zero_or_more`

## Operators

(none)