2008-05-11
2008-05-11 02:36:00 by Martin Stjernholm <mast@lysator.liu.se>
-
5e83445571c426d6004be89bc1df5fcbf3a23ceb
(7 lines)
(+6/-1)
[
Show
| Annotate
]
Branch: 7.9
Implemented visit functions for the visit_thing_fn interface. The gc
check/mark functions are restored to how they were before the
GC_PASS_COUNT_MEMORY stuff.
Rev: src/array.c:1.206
Rev: src/array.h:1.74
Rev: src/constants.c:1.59
Rev: src/constants.h:1.36
Rev: src/mapping.c:1.200
Rev: src/mapping.h:1.67
Rev: src/multiset.c:1.110
Rev: src/multiset.h:1.43
Rev: src/object.c:1.290
Rev: src/object.h:1.95
Rev: src/pike_types.c:1.331
Rev: src/pike_types.h:1.114
Rev: src/program.c:1.691
Rev: src/program.h:1.242
Rev: src/stralloc.c:1.218
Rev: src/stralloc.h:1.103
2:
|| This file is part of Pike. For copyright information see COPYRIGHT.
|| Pike is distributed under GPL, LGPL and MPL. See the file COPYING
|| for more information.
- || $Id: array.h,v 1.73 2008/05/01 21:44:32 mast Exp $
+ || $Id: array.h,v 1.74 2008/05/11 02:35:21 mast Exp $
*/
#ifndef ARRAY_H
192: Inside #if defined(PIKE_DEBUG)
PMOD_EXPORT void check_array(struct array *a);
void check_all_arrays(void);
#endif
+ void visit_array (struct array *a, int action);
void gc_mark_array_as_referenced(struct array *a);
void real_gc_cycle_check_array(struct array *a, int weak);
unsigned gc_touch_all_arrays(void);
211:
#define array_get_flags(a) ((a)->flags)
+ #define visit_array_ref(A, REF_TYPE) \
+ visit_ref (pass_array (A), (REF_TYPE), \
+ (visit_thing_fn *) &visit_array, NULL)
#define gc_cycle_check_array(X, WEAK) \
gc_cycle_enqueue((gc_cycle_check_cb *) real_gc_cycle_check_array, (X), (WEAK))