widl: Move the ifaces field of the type_t structure to coclass details.
This commit is contained in:
parent
83b1f08117
commit
8a42bc1f7b
@ -1295,7 +1295,6 @@ type_t *make_type(unsigned char type, type_t *ref)
|
|||||||
t->attrs = NULL;
|
t->attrs = NULL;
|
||||||
t->orig = NULL;
|
t->orig = NULL;
|
||||||
memset(&t->details, 0, sizeof(t->details));
|
memset(&t->details, 0, sizeof(t->details));
|
||||||
t->ifaces = NULL;
|
|
||||||
t->typestring_offset = 0;
|
t->typestring_offset = 0;
|
||||||
t->ptrdesc = 0;
|
t->ptrdesc = 0;
|
||||||
t->declarray = FALSE;
|
t->declarray = FALSE;
|
||||||
|
@ -140,7 +140,7 @@ void type_module_define(type_t *module, statement_list_t *stmts)
|
|||||||
|
|
||||||
type_t *type_coclass_define(type_t *coclass, ifref_list_t *ifaces)
|
type_t *type_coclass_define(type_t *coclass, ifref_list_t *ifaces)
|
||||||
{
|
{
|
||||||
coclass->ifaces = ifaces;
|
coclass->details.coclass.ifaces = ifaces;
|
||||||
coclass->defined = TRUE;
|
coclass->defined = TRUE;
|
||||||
return coclass;
|
return coclass;
|
||||||
}
|
}
|
||||||
|
@ -157,7 +157,7 @@ static inline int type_is_alias(const type_t *type)
|
|||||||
static inline ifref_list_t *type_coclass_get_ifaces(const type_t *type)
|
static inline ifref_list_t *type_coclass_get_ifaces(const type_t *type)
|
||||||
{
|
{
|
||||||
assert(type->type == RPC_FC_COCLASS);
|
assert(type->type == RPC_FC_COCLASS);
|
||||||
return type->ifaces;
|
return type->details.coclass.ifaces;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* WIDL_TYPE_TREE_H */
|
#endif /* WIDL_TYPE_TREE_H */
|
||||||
|
@ -296,6 +296,11 @@ struct array_details
|
|||||||
expr_t *size_is, *length_is;
|
expr_t *size_is, *length_is;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct coclass_details
|
||||||
|
{
|
||||||
|
ifref_list_t *ifaces;
|
||||||
|
};
|
||||||
|
|
||||||
struct _type_t {
|
struct _type_t {
|
||||||
const char *name;
|
const char *name;
|
||||||
unsigned char type;
|
unsigned char type;
|
||||||
@ -309,8 +314,8 @@ struct _type_t {
|
|||||||
struct iface_details *iface;
|
struct iface_details *iface;
|
||||||
struct module_details *module;
|
struct module_details *module;
|
||||||
struct array_details array;
|
struct array_details array;
|
||||||
|
struct coclass_details coclass;
|
||||||
} details;
|
} details;
|
||||||
ifref_list_t *ifaces; /* coclasses */
|
|
||||||
type_t *orig; /* dup'd types */
|
type_t *orig; /* dup'd types */
|
||||||
unsigned int typestring_offset;
|
unsigned int typestring_offset;
|
||||||
unsigned int ptrdesc; /* used for complex structs */
|
unsigned int ptrdesc; /* used for complex structs */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user