Logtalk reference manual
Predicate directive: private/1
Contents > Reference Manual > Directives > private/1

## private/1

#### Description

    private(Functor/Arity)
    private((Functor1/Arity1, Functor2/Arity2, ...))
    private([Functor1/Arity1, Functor2/Arity2, ...])

    private(Functor//Arity)
    private((Functor1//Arity1, Functor2//Arity2, ...))
    private([Functor1//Arity1, Functor2//Arity2, ...])

    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]).