extends_protocol(Protocol1, Protocol2) extends_protocol(Protocol1, Protocol2, Scope)
Enumerates, by backtracking, all pairs of protocols such that the first one extends the second. The relation scope is represented by the atoms public
, protected
, and private
.
extends_protocol(?protocol_identifier, ?protocol_identifier) extends_protocol(?protocol_identifier, ?protocol_identifier, ?scope)
type_error(protocol_identifier, Protocol1)
type_error(protocol_identifier, Protocol2)
type_error(scope, Scope)
| ?- extends_protocol(listp, Protocol). | ?- extends_protocol(Protocol, termp, private).