Add more foreign object interfaces
authorAndy Wingo <wingo@pobox.com>
Mon, 28 Apr 2014 09:27:31 +0000 (11:27 +0200)
committerAndy Wingo <wingo@pobox.com>
Mon, 28 Apr 2014 11:03:58 +0000 (13:03 +0200)
commit4b8ce7c75283efa6ac0ce24fc6e1aba99b47944b
treee0072c47ea88d57f0b47652e7a447d566d9d983e
parent682a55d59bff1b79ecce17b2344896efce390565
Add more foreign object interfaces

* libguile/foreign-object.c:
* libguile/foreign-object.h (scm_make_foreign_object_1)
  (scm_make_foreign_object_2, scm_make_foreign_object_3)
  (scm_make_foreign_object_n): Change to take void * arguments, and to
  add a comment to the header indicating that these are convenience
  constructors.

* libguile/foreign-object.c:
* libguile/foreign-object.h (scm_foreign_object_unsigned_ref)
  (scm_foreign_object_unsigned_set_x): New functions, equivalent to the
  old scm_foreign_object_ref and scm_foreign_object_set_x.

* libguile/foreign-object.c:
* libguile/foreign-object.h (scm_foreign_object_signed_ref)
  (scm_foreign_object_signed_set_x): New functions taking
  scm_t_signed_bits.

* libguile/foreign-object.c:
* libguile/foreign-object.h (scm_foreign_object_ref)
  (scm_foreign_object_set_x): New functions that take void*.
libguile/foreign-object.c
libguile/foreign-object.h
test-suite/standalone/test-foreign-object-c.c