directive

private/1

Description

private(Name/Arity)
private((Name/Arity, ...))
private([Name/Arity, ...])

private(Name//Arity)
private((Name//Arity, ...))
private([Name//Arity, ...])


private(op(Precedence,Associativity,Operator))
private((op(Precedence,Associativity,Operator), ...))
private([op(Precedence,Associativity,Operator), ...])

Declares private predicates, private grammar rule non-terminals, and private operators. A private predicate can only be called from the object containing the private directive. A private non-terminal can only be used in a call of the phrase/2 and phrase/3 methods from the object containing the private directive.

Template and modes

private(+predicate_indicator_term)
private(+non_terminal_indicator_term)
private(+operator_declaration)

Examples

:- private(counter/1).

:- private((init/1, free/1)).

:- private([data/3, key/1, keys/1]).