mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 03:40:34 +02:00
Remove port mark functions
* doc/ref/api-io.texi (Port Implementation): Remove documentation. * libguile/ports.c (scm_set_port_mark): Remove function. * libguile/ports.h (scm_t_ptob_descriptor): Remove mark function. * NEWS: Add entry.
This commit is contained in:
parent
4eb9fd47c4
commit
4460f1f152
4 changed files with 3 additions and 16 deletions
3
NEWS
3
NEWS
|
@ -19,7 +19,10 @@ Instead, use the symbol values `none', `line', or `block', respectively,
|
||||||
as arguments to the `setvbuf' function.
|
as arguments to the `setvbuf' function.
|
||||||
|
|
||||||
* Incompatible changes
|
* Incompatible changes
|
||||||
|
** Remove `scm_set_port_mark'
|
||||||
|
|
||||||
|
Port mark functions have not been called since the switch to the BDW
|
||||||
|
garbage collector.
|
||||||
|
|
||||||
|
|
||||||
Changes in 2.1.2 (changes since the 2.1.1 alpha release):
|
Changes in 2.1.2 (changes since the 2.1.1 alpha release):
|
||||||
|
|
|
@ -2303,14 +2303,6 @@ A pointer to a NUL terminated string: the name of the port type. This
|
||||||
is the only element of @code{scm_ptob_descriptor} which is not
|
is the only element of @code{scm_ptob_descriptor} which is not
|
||||||
a procedure. Set via the first argument to @code{scm_make_port_type}.
|
a procedure. Set via the first argument to @code{scm_make_port_type}.
|
||||||
|
|
||||||
@item mark
|
|
||||||
Called during garbage collection to mark any SCM objects that a port
|
|
||||||
object may contain. It doesn't need to be set unless the port has
|
|
||||||
@code{SCM} components. Set using
|
|
||||||
|
|
||||||
@deftypefun void scm_set_port_mark (scm_t_bits tc, SCM (*mark) (SCM port))
|
|
||||||
@end deftypefun
|
|
||||||
|
|
||||||
@item free
|
@item free
|
||||||
Called when the port is collected during gc. It
|
Called when the port is collected during gc. It
|
||||||
should free any resources used by the port.
|
should free any resources used by the port.
|
||||||
|
|
|
@ -267,12 +267,6 @@ scm_make_port_type (char *name,
|
||||||
return scm_tc7_port + ptobnum * 256;
|
return scm_tc7_port + ptobnum * 256;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
scm_set_port_mark (scm_t_bits tc, SCM (*mark) (SCM))
|
|
||||||
{
|
|
||||||
scm_c_port_type_ref (SCM_TC2PTOBNUM (tc))->mark = mark;
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
scm_set_port_free (scm_t_bits tc, size_t (*free) (SCM))
|
scm_set_port_free (scm_t_bits tc, size_t (*free) (SCM))
|
||||||
{
|
{
|
||||||
|
|
|
@ -184,7 +184,6 @@ typedef enum scm_t_port_type_flags {
|
||||||
typedef struct scm_t_ptob_descriptor
|
typedef struct scm_t_ptob_descriptor
|
||||||
{
|
{
|
||||||
char *name;
|
char *name;
|
||||||
SCM (*mark) (SCM);
|
|
||||||
size_t (*free) (SCM);
|
size_t (*free) (SCM);
|
||||||
int (*print) (SCM exp, SCM port, scm_print_state *pstate);
|
int (*print) (SCM exp, SCM port, scm_print_state *pstate);
|
||||||
SCM (*equalp) (SCM, SCM);
|
SCM (*equalp) (SCM, SCM);
|
||||||
|
@ -224,7 +223,6 @@ SCM_API scm_t_bits scm_make_port_type (char *name,
|
||||||
void (*write) (SCM port,
|
void (*write) (SCM port,
|
||||||
const void *data,
|
const void *data,
|
||||||
size_t size));
|
size_t size));
|
||||||
SCM_API void scm_set_port_mark (scm_t_bits tc, SCM (*mark) (SCM));
|
|
||||||
SCM_API void scm_set_port_free (scm_t_bits tc, size_t (*free) (SCM));
|
SCM_API void scm_set_port_free (scm_t_bits tc, size_t (*free) (SCM));
|
||||||
SCM_API void scm_set_port_print (scm_t_bits tc,
|
SCM_API void scm_set_port_print (scm_t_bits tc,
|
||||||
int (*print) (SCM exp,
|
int (*print) (SCM exp,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue