add foreign value wrapper
authorAndy Wingo <wingo@pobox.com>
Mon, 4 Jan 2010 11:11:33 +0000 (12:11 +0100)
committerAndy Wingo <wingo@pobox.com>
Mon, 4 Jan 2010 11:39:21 +0000 (12:39 +0100)
commite2c2a6994d05124760ea7f18caf5d28fb47e453c
treebe4c3ae11905d89a8f9519bcc6fbebab4a003beb
parent208fae8a0ebaa56b69105c89d69e337aef6a3e62
add foreign value wrapper

* libguile/foreign.h:
* libguile/foreign.c: New files, implementing simple wrappers around
  foreign values, such as those that one might link in dynamically from
  a library.

* libguile/tags.h (scm_tc7_foreign): Take a tc7 for foreign values.

* libguile.h:
* libguile/init.c: Add foreign.h to headers and init.

* libguile/print.c (iprin1): Add printer for foreign values.

* libguile/gc.c (scm_i_tag_name): Case for foreign values.
* libguile/goops.c (scm_class_of, create_standard_classes): Add a class
  for foreign values.

* libguile/evalext.c (scm_self_evaluating_p): Add case for foreign
  values.

* libguile/Makefile.am: Add foreign.[ch] to the build.
libguile.h
libguile/Makefile.am
libguile/evalext.c
libguile/foreign.c [new file with mode: 0644]
libguile/foreign.h [new file with mode: 0644]
libguile/gc.c
libguile/goops.c
libguile/init.c
libguile/print.c
libguile/tags.h