31 lines
524 B
C
31 lines
524 B
C
#include <mie/const.h>
|
|
#include <stdlib.h>
|
|
#include <string.h>
|
|
|
|
struct mie_const *mie_const_create(struct mie_type *type)
|
|
{
|
|
struct mie_const *c = malloc(sizeof *c);
|
|
if (!c) {
|
|
return NULL;
|
|
}
|
|
|
|
memset(c, 0x0, sizeof *c);
|
|
|
|
mie_value_init(&c->c_base, MIE_VALUE_CONST);
|
|
|
|
c->c_type = type;
|
|
|
|
return c;
|
|
}
|
|
|
|
static struct mie_type *get_type(struct mie_value *v)
|
|
{
|
|
struct mie_const *c = MIE_CONST(v);
|
|
return c->c_type;
|
|
}
|
|
|
|
const struct mie_value_type const_value_type = {
|
|
.t_id = MIE_VALUE_CONST,
|
|
.t_get_type = get_type,
|
|
};
|