74#define NTYPES (sizeof(oatypes)/sizeof(oatypes[0]))
75#define KWP(p) ((const struct oatype *)(p))
84 const char *kw =
t->name;
133 chat(
"get_type_vt: %p type->name %s\n",
t,
t->name);
198 error(
"handles can't be used in typelibs\n");
216 if(
match(
t->name,
"IUnknown"))
218 if(
match(
t->name,
"IDispatch"))
239 error(
"get_type_vt: functions not supported\n");
243 error(
"get_type_vt: bitfields not supported\n");
250void start_typelib(
typelib_t *typelib_type)
256void end_typelib(
void)
267 error(
"error while reading importlib.\n");
273 error(
"lseek failed\n");
289 importlib->allocated = 0;
294 importlib->version =
header.version;
302 importlib->ntypeinfos =
header.nrtypeinfos;
305 for(
i=0;
i < importlib->ntypeinfos;
i++) {
314 importlib->importinfos[
i].importlib = importlib;
315 importlib->importinfos[
i].flags = (
base.typekind&0xf)<<24;
316 importlib->importinfos[
i].offset = -1;
317 importlib->importinfos[
i].id =
i;
319 if(
base.posguid != -1) {
323 else memset( &importlib->importinfos[
i].guid, 0,
sizeof(importlib->importinfos[
i].guid));
332 importlib->importinfos[
i].name[
len] = 0;
361 const char *
p =
strrchr(importlib->name,
'.');
362 size_t len =
p ?
p - importlib->name :
strlen(importlib->name);
363 if(
strcmp(importlib->name +
len,
".tlb")) {
373 error(
"Could not find importlib %s.\n", importlib->name);
382 error(
"Wrong or unsupported typelib magic %x\n",
magic);
404 importlib =
xmalloc(
sizeof(*importlib));
405 memset( importlib, 0,
sizeof(*importlib) );
int strcmp(const char *String1, const char *String2)
ACPI_SIZE strlen(const char *String)
char * strcpy(char *DstString, const char *SrcString)
char * xstrdup(const char *s)
static void list_add_head(struct list_entry *head, struct list_entry *entry)
static REFPROPVARIANT PROPVAR_CHANGE_FLAGS VARTYPE vt
#define MSFT_IMPINFO_OFFSET_IS_GUID
GLuint GLuint GLsizei count
GLenum GLuint GLenum GLsizei const GLchar * buf
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define memcpy(s1, s2, n)
char * wpp_find_include(const char *name, const char *parent_name)
_Check_return_ _CRTIMP _CONST_RETURN char *__cdecl strrchr(_In_z_ const char *_Str, _In_ int _Ch)
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
static int type_array_is_decl_as_ptr(const type_t *type)
static enum type_type type_get_type(const type_t *type)
static int type_basic_get_sign(const type_t *type)
static enum type_basic_type type_basic_get_type(const type_t *type)
static int type_is_alias(const type_t *type)
static type_t * type_array_get_element(const type_t *type)
static type_t * type_pointer_get_ref(const type_t *type)
unsigned int pointer_size
@ TYPE_ENCAPSULATED_UNION
@ TYPE_BASIC_ERROR_STATUS_T