This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
yap-6.3/Logtalk/examples/roots/classp.lgt

93 lines
1.9 KiB
Plaintext
Raw Normal View History

:- protocol(classp).
:- info([
version is 1.0,
author is 'Paulo Moura',
date is 2000/7/24,
comment is 'Default protocol for all instantiable classes.']).
:- public(new/1).
:- mode(new(?object), zero_or_one).
:- info(new/1, [
comment is 'Creates a new instance.',
argnames is ['Instance']]).
:- public(new/2).
:- mode(new(?object, +list), zero_or_one).
:- info(new/2, [
comment is 'Creates a new instance using a list of initialization options.',
argnames is ['Instance', 'Options']]).
:- public(clone/2).
:- mode(clone(+object, ?object), zero_or_one).
:- info(clone/2, [
comment is 'Clones an instance.',
argnames is ['Instance', 'Clone']]).
:- public(instance_base_name/1).
:- mode(instance_base_name(-atom), one).
:- info(instance_base_name/1, [
comment is 'Base name to generated new instance names.',
argnames is ['Name']]).
:- public(delete/1).
:- mode(delete(+object), zero_or_one).
:- info(delete/1, [
comment is 'Deletes a dynamic instance.',
argnames is ['Instance']]).
:- public(delete/2).
:- mode(delete(+object, +list), zero_or_one).
:- info(delete/2, [
comment is 'Deletes a dynamic instance using a list of deleting options.',
argnames is ['Instance', 'Options']]).
:- public(delete_all/0).
:- mode(delete_all, zero_or_one).
:- info(delete_all/0, [
comment is 'Deletes all dynamic instances. Fails if some dynamic instance can not be deleted.']).
:- public(delete_all/1).
:- mode(delete_all(+list), zero_or_one).
:- info(delete_all/1, [
comment is 'Deletes all dynamic instances using a list of deleting options. Fails if some dynamic instance can not be deleted.',
argnames is ['Options']]).
:- public(equals/2).
:- mode(equals(+object, +object), zero_or_one).
:- info(equals/2, [
comment is 'The two instances represents the same object for some definition of equality.',
argnames is ['Instance1', 'Instance2']]).
:- end_protocol.