next up previous contents index
Next: Classes construites Up: Structures de données et Previous: Classes   Contents   Index



Définition d'une classe virtuelle

Une classe virtuelle se définie simplement à l'aide d'un nom de classes, une super classe et une fonction prédicat, avec la macro define-virtual-class :

Osm> (define-virtual-class
      nom      ; nom de la classe
      super    ; super classe
      prédicat ; fonction prédicat
      )

En utilisant cette macro, la classe virtuelle <integer> est définie par :

Osm> (define-virtual-class <integer>
                           <rational>
                           integer?)

Toutes les autres classes virtuelles du système sont définies de la même manière. On peut ajouter autant de classes virtuelles que nécessaire afin de réutiliser en Scheme objet des objets existants.



© 1993 to 2001 Erian Concept