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/library/class_hierarchyp.lgt
2001-06-06 19:40:57 +00:00

158 lines
3.2 KiB
Plaintext

:- protocol(class_hierarchyp,
extends(hierarchyp)).
:- info([
version is 1.0,
authors is 'Paulo Moura',
date is 2000/7/24,
comment is 'Class hierarchy protocol.']).
:- public(class/1).
:- mode(class(?object), zero_or_more).
:- info(class/1, [
comment is 'Returns, by backtracking, all object classes.',
argnames is ['Class']]).
:- public(classes/1).
:- mode(classes(-list), one).
:- info(classes/1, [
comment is 'List of all object classes.',
argnames is ['Classes']]).
:- public(instance/1).
:- mode(instance(?object), zero_or_more).
:- info(instance/1, [
comment is 'Returns, by backtracking, all class instances.',
argnames is ['Instance']]).
:- public(instances/1).
:- mode(instances(-list), one).
:- info(instances/1, [
comment is 'List of all class instances.',
argnames is ['Instances']]).
:- public(subclass/1).
:- mode(subclass(?object), zero_or_more).
:- info(subclass/1, [
comment is 'Returns, by backtracking, all class subclasses.',
argnames is ['Subclass']]).
:- public(subclasses/1).
:- mode(subclasses(-list), one).
:- info(subclasses/1, [
comment is 'List of all class subclasses.',
argnames is ['Subclasses']]).
:- public(superclass/1).
:- mode(superclass(?object), zero_or_more).
:- info(superclass/1, [
comment is 'Returns, by backtracking, all class superclasses.',
argnames is ['Superclass']]).
:- public(superclasses/1).
:- mode(superclasses(-list), one).
:- info(superclasses/1, [
comment is 'List of all class superclasses.',
argnames is ['Superclasses']]).
:- public(leaf_instance/1).
:- mode(leaf_instance(?object), zero_or_more).
:- info(leaf_instance/1, [
comment is 'Returns, by backtracking, all class leaf instances.',
argnames is ['Leaf']]).
:- public(leaf_instances/1).
:- mode(leaf_instances(-list), one).
:- info(leaf_instances/1, [
comment is 'List of all class leaf instances.',
argnames is ['Leaves']]).
:- public(leaf_class/1).
:- mode(leaf_class(?object), zero_or_more).
:- info(leaf_class/1, [
comment is 'Returns, by backtracking, all class leaf subclasses.',
argnames is ['Leaf']]).
:- public(leaf_classes/1).
:- mode(leaf_classes(-list), one).
:- info(leaf_classes/1, [
comment is 'List of all class leaf leaf subclasses.',
argnames is ['Leaves']]).
:- public(descendant_instance/1).
:- mode(descendant_instance(?object), zero_or_more).
:- info(descendant_instance/1, [
comment is 'Returns, by backtracking, all class descendant instances.',
argnames is ['Descendant']]).
:- public(descendant_instances/1).
:- mode(descendant_instances(-list), one).
:- info(descendant_instances/1, [
comment is 'List of all class descendant instances.',
argnames is ['Descendants']]).
:- public(descendant_class/1).
:- mode(descendant_class(?object), zero_or_more).
:- info(descendant_class/1, [
comment is 'Returns, by backtracking, all class descendant subclasses.',
argnames is ['Descendant']]).
:- public(descendant_classes/1).
:- mode(descendant_classes(-list), one).
:- info(descendant_classes/1, [
comment is 'List of all class descendant subclasses.',
argnames is ['Descendants']]).
:- end_protocol.