representation_error/1 — The Logtalk Handbook v3.47.0 documentation

# `representation_error/1`

## Description

    representation_error(Flag)

Throws a representation error. Used when some representation limit is exceeded. For example, trying to construct a compound term that exceeds the maximum arity supported by the backend Prolog system. This built-in method is declared private and thus cannot be used as a message to an object. Calling this predicate is equivalent to the following sequence of goals:

    ...,
    context(Context),
    throw(error(representation_error(Flag), Context)).

This allows the user to generate errors in the same format used by the runtime.

Possible values for `Flag` include:

- `character`

- `character_code`

- `in_character_code`

- `max_arity`

- `max_integer`

- `min_integer`

- `lambda_parameters`

- `entity_prefix`

## Modes and number of proofs

    representation_error(+atom) - error

## Errors

When called:
`representation_error(Flag)`

## Examples

    ...,
    Code > 127,
    representation_error(character_code).

See also

catch/3, throw/1, context/1, instantiation_error/0, uninstantiation_error/1, type_error/2, domain_error/2, existence_error/2, permission_error/3, evaluation_error/1, resource_error/1, syntax_error/1, system_error/0