Branch: Tag:

2000-07-28

2000-07-28 17:16:56 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>

JUMBOPATCH: dynamic loading now works on Win* !!!! (somewhat experimental :)

Rev: src/.cvsignore:1.24
Rev: src/Makefile.in:1.198
Rev: src/aclocal.m4:1.17
Rev: src/array.c:1.79
Rev: src/array.h:1.22
Rev: src/backend.c:1.53
Rev: src/backend.h:1.9
Rev: src/bignum.c:1.17
Rev: src/bignum.h:1.14
Rev: src/builtin_functions.c:1.293
Rev: src/builtin_functions.h:1.14
Rev: src/callback.c:1.20
Rev: src/configure.in:1.387
Rev: src/constants.c:1.22
Rev: src/dynamic_buffer.c:1.10
Rev: src/dynamic_load.c:1.41
Rev: src/error.c:1.56
Rev: src/error.h:1.46
Rev: src/fd_control.c:1.32
Rev: src/fdlib.c:1.37
Rev: src/fdlib.h:1.34
Rev: src/fsort.c:1.13
Rev: src/fsort_template.h:1.7
Rev: src/gc.c:1.110
Rev: src/gc.h:1.57
Rev: src/global.h:1.44
Rev: src/interpret.c:1.158
Rev: src/interpret.h:1.52
Rev: src/main.c:1.94
Rev: src/mapping.c:1.94
Rev: src/mapping.h:1.28
Rev: src/module_magic.h:1.1
Rev: src/module_support.c:1.34
Rev: src/module_support.h:1.7
Rev: src/multiset.c:1.26
Rev: src/object.c:1.137
Rev: src/object.h:1.50
Rev: src/opcodes.c:1.78
Rev: src/operators.c:1.93
Rev: src/operators.h:1.8
Rev: src/pike_macros.h:1.17
Rev: src/pike_memory.c:1.71
Rev: src/pike_memory.h:1.14
Rev: src/pike_types.c:1.132
Rev: src/port.c:1.28
Rev: src/precompile.sh.in:1.2
Rev: src/program.c:1.252
Rev: src/program.h:1.97
Rev: src/signal_handler.c:1.173
Rev: src/stralloc.c:1.85
Rev: src/stralloc.h:1.42
Rev: src/stuff.c:1.11
Rev: src/svalue.c:1.85
Rev: src/svalue.h:1.62
Rev: src/testsuite.in:1.316
Rev: src/threads.c:1.133
Rev: src/threads.h:1.99

5:   \*/      /* -  * $Id: array.h,v 1.21 2000/07/18 05:48:20 mast Exp $ +  * $Id: array.h,v 1.22 2000/07/28 17:16:54 hubbe Exp $    */   #ifndef ARRAY_H   #define ARRAY_H
89:         /* Prototypes begin here */ - struct array *low_allocate_array(INT32 size,INT32 extra_space); + PMOD_EXPORT struct array *low_allocate_array(INT32 size,INT32 extra_space);   void really_free_array(struct array *v); - void do_free_array(struct array *a); - void array_index_no_free(struct svalue *s,struct array *v,INT32 index); - void array_index(struct svalue *s,struct array *v,INT32 index); - void simple_array_index_no_free(struct svalue *s, + PMOD_EXPORT void do_free_array(struct array *a); + PMOD_EXPORT void array_index_no_free(struct svalue *s,struct array *v,INT32 index); + PMOD_EXPORT void array_index(struct svalue *s,struct array *v,INT32 index); + PMOD_EXPORT void simple_array_index_no_free(struct svalue *s,    struct array *a,struct svalue *ind); - void array_free_index(struct array *v,INT32 index); - void array_set_index(struct array *v,INT32 index, struct svalue *s); - void simple_set_index(struct array *a,struct svalue *ind,struct svalue *s); - struct array *array_insert(struct array *v,struct svalue *s,INT32 index); - struct array *resize_array(struct array *a, INT32 size); - struct array *array_shrink(struct array *v,INT32 size); - struct array *array_remove(struct array *v,INT32 index); - INT32 array_search(struct array *v, struct svalue *s,INT32 start); - struct array *slice_array(struct array *v,INT32 start,INT32 end); - struct array *friendly_slice_array(struct array *v,INT32 start,INT32 end); - struct array *copy_array(struct array *v); - void check_array_for_destruct(struct array *v); - INT32 array_find_destructed_object(struct array *v); + PMOD_EXPORT void array_free_index(struct array *v,INT32 index); + PMOD_EXPORT void array_set_index(struct array *v,INT32 index, struct svalue *s); + PMOD_EXPORT void simple_set_index(struct array *a,struct svalue *ind,struct svalue *s); + PMOD_EXPORT struct array *array_insert(struct array *v,struct svalue *s,INT32 index); + PMOD_EXPORT struct array *resize_array(struct array *a, INT32 size); + PMOD_EXPORT struct array *array_shrink(struct array *v,INT32 size); + PMOD_EXPORT struct array *array_remove(struct array *v,INT32 index); + PMOD_EXPORT INT32 array_search(struct array *v, struct svalue *s,INT32 start); + PMOD_EXPORT struct array *slice_array(struct array *v,INT32 start,INT32 end); + PMOD_EXPORT struct array *friendly_slice_array(struct array *v,INT32 start,INT32 end); + PMOD_EXPORT struct array *copy_array(struct array *v); + PMOD_EXPORT void check_array_for_destruct(struct array *v); + PMOD_EXPORT INT32 array_find_destructed_object(struct array *v);   INT32 *get_order(struct array *v, cmpfun fun); - void sort_array_destructively(struct array *v); - INT32 *get_set_order(struct array *a); - INT32 *get_switch_order(struct array *a); - INT32 *get_alpha_order(struct array *a); + PMOD_EXPORT void sort_array_destructively(struct array *v); + PMOD_EXPORT INT32 *get_set_order(struct array *a); + PMOD_EXPORT INT32 *get_switch_order(struct array *a); + PMOD_EXPORT INT32 *get_alpha_order(struct array *a);   INT32 set_lookup(struct array *a, struct svalue *s);   INT32 switch_lookup(struct array *a, struct svalue *s); - struct array *order_array(struct array *v, INT32 *order); - struct array *reorder_and_copy_array(struct array *v, INT32 *order); - void array_fix_type_field(struct array *v); + PMOD_EXPORT struct array *order_array(struct array *v, INT32 *order); + PMOD_EXPORT struct array *reorder_and_copy_array(struct array *v, INT32 *order); + PMOD_EXPORT void array_fix_type_field(struct array *v);   void array_check_type_field(struct array *v); - struct array *compact_array(struct array *v); + PMOD_EXPORT struct array *compact_array(struct array *v);   union anything *low_array_get_item_ptr(struct array *a,    INT32 ind,    TYPE_T t);
128:    struct svalue *ind,    TYPE_T t);   INT32 * merge(struct array *a,struct array *b,INT32 opcode); - struct array *array_zip(struct array *a, struct array *b,INT32 *zipper); - struct array *add_arrays(struct svalue *argp, INT32 args); - int array_equal_p(struct array *a, struct array *b, struct processing *p); - struct array *merge_array_with_order(struct array *a, struct array *b,INT32 op); - struct array *merge_array_without_order2(struct array *a, struct array *b,INT32 op); - struct array *merge_array_without_order(struct array *a, + PMOD_EXPORT struct array *array_zip(struct array *a, struct array *b,INT32 *zipper); + PMOD_EXPORT struct array *add_arrays(struct svalue *argp, INT32 args); + PMOD_EXPORT int array_equal_p(struct array *a, struct array *b, struct processing *p); + PMOD_EXPORT struct array *merge_array_with_order(struct array *a, struct array *b,INT32 op); + PMOD_EXPORT struct array *merge_array_without_order2(struct array *a, struct array *b,INT32 op); + PMOD_EXPORT struct array *merge_array_without_order(struct array *a,    struct array *b,    INT32 op); - struct array *subtract_arrays(struct array *a, struct array *b); - struct array *and_arrays(struct array *a, struct array *b); + PMOD_EXPORT struct array *subtract_arrays(struct array *a, struct array *b); + PMOD_EXPORT struct array *and_arrays(struct array *a, struct array *b);   int check_that_array_is_constant(struct array *a);   node *make_node_from_array(struct array *a); - void push_array_items(struct array *a); + PMOD_EXPORT void push_array_items(struct array *a);   void describe_array_low(struct array *a, struct processing *p, int indent); - void simple_describe_array(struct array *a); + PMOD_EXPORT void simple_describe_array(struct array *a);   void describe_index(struct array *a,    int e,    struct processing *p,    int indent);   void describe_array(struct array *a,struct processing *p,int indent);   struct array *aggregate_array(INT32 args); - struct array *append_array(struct array *a, struct svalue *s); - struct array *explode(struct pike_string *str, + PMOD_EXPORT struct array *append_array(struct array *a, struct svalue *s); + PMOD_EXPORT struct array *explode(struct pike_string *str,    struct pike_string *del); - struct pike_string *implode(struct array *a,struct pike_string *del); - struct array *copy_array_recursively(struct array *a,struct processing *p); - void apply_array(struct array *a, INT32 args); - struct array *reverse_array(struct array *a); - void array_replace(struct array *a, + PMOD_EXPORT struct pike_string *implode(struct array *a,struct pike_string *del); + PMOD_EXPORT struct array *copy_array_recursively(struct array *a,struct processing *p); + PMOD_EXPORT void apply_array(struct array *a, INT32 args); + PMOD_EXPORT struct array *reverse_array(struct array *a); + PMOD_EXPORT void array_replace(struct array *a,    struct svalue *from,    struct svalue *to); - void check_array(struct array *a); + PMOD_EXPORT void check_array(struct array *a);   void check_all_arrays(void);   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);   void gc_check_all_arrays(void);   void gc_mark_all_arrays(void); - void real_gc_cycle_check_array(struct array *a, int weak); +    void gc_cycle_check_all_arrays(void);   void gc_zap_ext_weak_refs_in_arrays(void);   void gc_free_all_unreferenced_arrays(void);
173:   void debug_dump_array(struct array *a);   void zap_all_arrays(void);   void count_memory_in_arrays(INT32 *num_, INT32 *size_); - struct array *explode_array(struct array *a, struct array *b); - struct array *implode_array(struct array *a, struct array *b); + PMOD_EXPORT struct array *explode_array(struct array *a, struct array *b); + PMOD_EXPORT struct array *implode_array(struct array *a, struct array *b);   /* Prototypes end here */      #define gc_cycle_check_array(X, WEAK) \    gc_cycle_enqueue((gc_cycle_check_cb *) real_gc_cycle_check_array, (X), (WEAK))      #endif /* ARRAY_H */