forked from github/server
186a575c7c
"Der strict-aliasing fix zerstoert Referenzen" - mostly rewrote the whole delayed resolution code. http://eressea.upb.de/mantis/view.php?id=1431 "buildings and ships are leaking memory" - made a mistake deleting damaged ships. also: - WORMHOLE_MODULE is now a config option
37 lines
975 B
C
37 lines
975 B
C
/* vi: set ts=2:
|
|
*
|
|
*
|
|
* Eressea PB(E)M host Copyright (C) 1998-2003
|
|
* Christian Schlittchen (corwin@amber.kn-bremen.de)
|
|
* Katja Zedel (katze@felidae.kn-bremen.de)
|
|
* Henning Peters (faroul@beyond.kn-bremen.de)
|
|
* Enno Rehling (enno@eressea.de)
|
|
* Ingo Wilken (Ingo.Wilken@informatik.uni-oldenburg.de)
|
|
*
|
|
* This program may not be used, modified or distributed without
|
|
* prior permission by the authors of Eressea.
|
|
*/
|
|
|
|
#ifndef RESOLVE_H
|
|
#define RESOLVE_H
|
|
|
|
#include "variant.h"
|
|
struct storage;
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef int (*resolve_fun)(variant data, void * address);
|
|
typedef variant (*read_fun)(struct storage* store);
|
|
extern int read_reference(void * address, struct storage * store, read_fun reader, resolve_fun resolver);
|
|
|
|
extern void ur_add(variant data, void * address, resolve_fun fun);
|
|
extern void resolve(void);
|
|
|
|
extern variant read_int(struct storage * store);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif
|