GDB (API)
Classes | Defines | Typedefs | Functions
/home/stan/gdb/src/gdb/registry.h File Reference

Go to the source code of this file.

Classes

struct  registry_fields
struct  registry_data
struct  registry_data_registration
struct  registry_data_registry

Defines

#define REGISTRY_FIELDS   struct registry_fields registry_data
#define REGISTRY_ACCESS_FIELD(CONTAINER)   (CONTAINER)
#define DEFINE_REGISTRY(TAG, ACCESS)
#define DECLARE_REGISTRY(TAG)

Typedefs

typedef void(* registry_data_callback )(struct registry_container *, void *)
typedef void(* registry_callback_adaptor )(registry_data_callback func, struct registry_container *container, void *data)

Functions

struct registry_dataregister_data_with_cleanup (struct registry_data_registry *registry, registry_data_callback save, registry_data_callback free)
void registry_alloc_data (struct registry_data_registry *registry, struct registry_fields *registry_fields)
void registry_clear_data (struct registry_data_registry *data_registry, registry_callback_adaptor adaptor, struct registry_container *container, struct registry_fields *fields)
void registry_container_free_data (struct registry_data_registry *data_registry, registry_callback_adaptor adaptor, struct registry_container *container, struct registry_fields *fields)
void registry_set_data (struct registry_fields *fields, const struct registry_data *data, void *value)
void * registry_data (struct registry_fields *fields, const struct registry_data *data)

Define Documentation

#define DECLARE_REGISTRY (   TAG)
Value:
struct TAG ## _data;                                                    \
typedef void (*registry_ ## TAG ## _callback) (struct TAG *, void *);   \
extern const struct TAG ## _data *register_ ## TAG ## _data (void);     \
extern const struct TAG ## _data *register_ ## TAG ## _data_with_cleanup \
 (registry_ ## TAG ## _callback save, registry_ ## TAG ## _callback free); \
extern void clear_ ## TAG ## _data (struct TAG *);              \
extern void set_ ## TAG ## _data (struct TAG *,                 \
                                  const struct TAG ## _data *data, \
                                  void *value);                 \
extern void *TAG ## _data (struct TAG *,                        \
                           const struct TAG ## _data *data);

Definition at line 243 of file registry.h.

#define DEFINE_REGISTRY (   TAG,
  ACCESS 
)

Definition at line 153 of file registry.h.

#define REGISTRY_ACCESS_FIELD (   CONTAINER)    (CONTAINER)

Definition at line 84 of file registry.h.

Definition at line 77 of file registry.h.


Typedef Documentation

typedef void(* registry_callback_adaptor)(registry_data_callback func, struct registry_container *container, void *data)

Definition at line 130 of file registry.h.

typedef void(* registry_data_callback)(struct registry_container *, void *)

Definition at line 96 of file registry.h.


Function Documentation

Definition at line 26 of file registry.c.

void registry_alloc_data ( struct registry_data_registry registry,
struct registry_fields registry_fields 
)

Definition at line 49 of file registry.c.

void registry_clear_data ( struct registry_data_registry data_registry,
registry_callback_adaptor  adaptor,
struct registry_container *  container,
struct registry_fields fields 
)

Definition at line 58 of file registry.c.

void registry_container_free_data ( struct registry_data_registry data_registry,
registry_callback_adaptor  adaptor,
struct registry_container *  container,
struct registry_fields fields 
)

Definition at line 88 of file registry.c.

void* registry_data ( struct registry_fields fields,
const struct registry_data data 
)

Definition at line 110 of file registry.c.

void registry_set_data ( struct registry_fields fields,
const struct registry_data data,
void *  value 
)

Definition at line 101 of file registry.c.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines