1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-09 21:40:33 +02:00

Repurpose scm_i_port_weak_hash to associate an alist with each port.

* libguile/ports.c (scm_i_port_weak_hash): Document that the values in
  this hash table will now be alists.  Previously the value slots were
  unused.

  (scm_new_port_table_entry): Change the initial value of the entry in
  scm_i_port_weak_hash from SCM_BOOL_F to SCM_EOL.
This commit is contained in:
Mark H Weaver 2012-10-23 00:36:12 -04:00
parent 02327c0c51
commit 851c3cd16e

View file

@ -533,7 +533,8 @@ scm_i_dynwind_current_load_port (SCM port)
/* /*
We need a global registry of ports to flush them all at exit, and to We need a global registry of ports to flush them all at exit, and to
get all the ports matching a file descriptor. get all the ports matching a file descriptor. The associated values
are alists, where additional information can be associated with ports.
*/ */
SCM scm_i_port_weak_hash; SCM scm_i_port_weak_hash;
@ -633,7 +634,7 @@ scm_new_port_table_entry (scm_t_bits tag)
SCM_SET_CELL_TYPE (z, tag); SCM_SET_CELL_TYPE (z, tag);
SCM_SETPTAB_ENTRY (z, entry); SCM_SETPTAB_ENTRY (z, entry);
scm_hashq_set_x (scm_i_port_weak_hash, z, SCM_BOOL_F); scm_hashq_set_x (scm_i_port_weak_hash, z, SCM_EOL);
/* For each new port, register a finalizer so that it port type's free /* For each new port, register a finalizer so that it port type's free
function can be invoked eventually. */ function can be invoked eventually. */