~ chicken-core (chicken-5) 6a348c00a65c6fb6a7d67c331f76ef52bf1781d3


commit 6a348c00a65c6fb6a7d67c331f76ef52bf1781d3
Author:     felix <felix@call-with-current-continuation.org>
AuthorDate: Tue Jun 1 12:50:15 2010 +0200
Commit:     felix <felix@call-with-current-continuation.org>
CommitDate: Tue Jun 1 12:50:15 2010 +0200

    update for instance type-spec in manual

diff --git a/manual/Foreign type specifiers b/manual/Foreign type specifiers
index e3ad9878..c0ff376b 100644
--- a/manual/Foreign type specifiers	
+++ b/manual/Foreign type specifiers	
@@ -205,9 +205,18 @@ they be result values. Pointers to unions are allowed, though.
 
 === (instance CNAME SCHEMECLASS)
 
-A pointer to a C++ class instance. {{CNAME}} should designate the name of the
-C++ class, and {{SCHEMECLASS}} should be the class that wraps the instance
-pointer. Normally {{SCHEMECLASS}} should be a subclass of {{<c++-object>}}.
+A pointer to a C++ class instance wrapped into a Scheme object
+instance. {{CNAME}} should designate the name of the C++ class, and
+{{SCHEMECLASS}} should be the class that wraps the instance pointer.
+
+To use this, an extension will be required that provides an
+object-creation- and access-interface compatible to
+[[/eggref/4/coops|coops]] or
+[[/eggref/4/tinyclos|tinyclos]]. Speecifically, it should provide the
+following operations:
+
+  (make SCHEMECLASS 'this POINTER)
+  (slot-ref INSTANCE 'this)
 
 === (instance-ref CNAME SCHEMECLASS)
 
Trap