mirror of
https://github.com/justinethier/cyclone.git
synced 2025-05-25 13:05:05 +02:00
Added flags
This commit is contained in:
parent
c24e58f7aa
commit
74eff82805
2 changed files with 14 additions and 0 deletions
1
gc.c
1
gc.c
|
@ -485,6 +485,7 @@ char *gc_copy_obj(object dest, char *obj, gc_thread_data * thd)
|
||||||
type_of(hp) = port_tag;
|
type_of(hp) = port_tag;
|
||||||
hp->fp = ((port_type *) obj)->fp;
|
hp->fp = ((port_type *) obj)->fp;
|
||||||
hp->mode = ((port_type *) obj)->mode;
|
hp->mode = ((port_type *) obj)->mode;
|
||||||
|
hp->flags = ((port_type *) obj)->flags;
|
||||||
hp->mem_buf = ((port_type *)obj)->mem_buf;
|
hp->mem_buf = ((port_type *)obj)->mem_buf;
|
||||||
hp->mem_buf_len = ((port_type *)obj)->mem_buf_len;
|
hp->mem_buf_len = ((port_type *)obj)->mem_buf_len;
|
||||||
return (char *)hp;
|
return (char *)hp;
|
||||||
|
|
|
@ -778,6 +778,7 @@ typedef struct {
|
||||||
tag_type tag;
|
tag_type tag;
|
||||||
FILE *fp;
|
FILE *fp;
|
||||||
int mode;
|
int mode;
|
||||||
|
unsigned char flags;
|
||||||
char *mem_buf;
|
char *mem_buf;
|
||||||
size_t mem_buf_len;
|
size_t mem_buf_len;
|
||||||
} port_type;
|
} port_type;
|
||||||
|
@ -790,6 +791,18 @@ typedef struct {
|
||||||
p.tag = port_tag; \
|
p.tag = port_tag; \
|
||||||
p.fp = f; \
|
p.fp = f; \
|
||||||
p.mode = m; \
|
p.mode = m; \
|
||||||
|
p.flags = 0; \
|
||||||
|
p.mem_buf = NULL; \
|
||||||
|
p.mem_buf_len = 0;
|
||||||
|
|
||||||
|
#define make_file_backed_port(p,f,m) \
|
||||||
|
port_type p; \
|
||||||
|
p.hdr.mark = gc_color_red; \
|
||||||
|
p.hdr.grayed = 0; \
|
||||||
|
p.tag = port_tag; \
|
||||||
|
p.fp = f; \
|
||||||
|
p.mode = m; \
|
||||||
|
p.flags = 1; \
|
||||||
p.mem_buf = NULL; \
|
p.mem_buf = NULL; \
|
||||||
p.mem_buf_len = 0;
|
p.mem_buf_len = 0;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue