implements_protocol/2-3
implements_protocol(Object, Protocol) implements_protocol(Category, Protocol) implements_protocol(Object, Protocol, Scope) implements_protocol(Category, Protocol, Scope)Enumerates, by backtracking, all pairs of entities such that an object or a category implements a protocol. The relation scope is represented by the atoms
public
,protected
, andprivate
.
implements_protocol(?object_identifier, ?protocol_identifier) implements_protocol(?category_identifier, ?protocol_identifier) implements_protocol(?object_identifier, ?protocol_identifier, ?scope) implements_protocol(?category_identifier, ?protocol_identifier, ?scope)
- Object is neither a variable nor a valid object identifier:
type_error(object_identifier, Object)
- Category is neither a variable nor a valid category identifier:
type_error(category_identifier, Category)
- Protocol is neither a variable nor a valid protocol identifier:
type_error(protocol_identifier, Protocol)
- Scope is neither a variable nor a valid entity scope:
type_error(scope, Scope)
| ?- implements_protocol(List, listp). | ?- implements_protocol(List, listp, public).