Files
fx/fx.reflection/include/fx/reflection/assembly.h
T

51 lines
1.2 KiB
C

#ifndef FX_REFLECTION_ASSEMBLY_H_
#define FX_REFLECTION_ASSEMBLY_H_
#include <fx/iterator.h>
#include <fx/macros.h>
FX_DECLS_BEGIN;
#define FX_REFLECTION_TYPE_ASSEMBLY (fx_assembly_get_type())
FX_DECLARE_TYPE(fx_assembly);
FX_TYPE_CLASS_DECLARATION_BEGIN(fx_assembly)
FX_TYPE_CLASS_DECLARATION_END(fx_assembly)
FX_API fx_type_id fx_assembly_get_type();
FX_TYPE_DEFAULT_CONSTRUCTOR(fx_assembly, FX_REFLECTION_TYPE_ASSEMBLY);
FX_API fx_iterator *fx_assembly_get_all(void);
FX_API const fx_assembly *fx_assembly_get_by_name(const char *name);
FX_API fx_status fx_assembly_register(fx_assembly *assembly);
FX_API void fx_assembly_set_name(fx_assembly *assembly, const char *name);
FX_API void fx_assembly_set_version(
fx_assembly *assembly,
long major,
long minor,
long build,
long revision);
FX_API void fx_assembly_add_type(
fx_assembly *assembly,
const char *full_name,
fx_type_id type_id);
FX_API fx_iterator *fx_assembly_get_types(const fx_assembly *assembly);
FX_API const char *fx_assembly_get_name(const fx_assembly *assembly);
FX_API void fx_assembly_get_version(
const fx_assembly *assembly,
long *out_major,
long *out_minor,
long *out_build,
long *out_revision);
FX_API void fx_assembly_dump(const fx_assembly *assembly);
FX_DECLS_END;
#endif