ReactOS 0.4.16-dev-1946-g52006dd
widltypes.h File Reference
#include <stdarg.h>
#include <stdbool.h>
#include <assert.h>
#include "ndrtypes.h"
#include "wine/list.h"
Include dependency graph for widltypes.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  uuid
 
struct  location
 
struct  str_list_entry_t
 
struct  _decl_spec_t
 
struct  _attr_t
 
struct  integer
 
struct  _expr_t
 
struct  _attr_custdata_t
 
struct  struct_details
 
struct  enumeration_details
 
struct  func_details
 
struct  iface_details
 
struct  module_details
 
struct  array_details
 
struct  coclass_details
 
struct  basic_details
 
struct  pointer_details
 
struct  bitfield_details
 
struct  alias_details
 
struct  runtimeclass_details
 
struct  parameterized_details
 
struct  delegate_details
 
struct  namespace
 
struct  _type_t
 
struct  _var_t
 
struct  _declarator_t
 
struct  _typeref_t
 
struct  _typelib_entry_t
 
struct  _importinfo_t
 
struct  _importlib_t
 
struct  _typelib_t
 
struct  _user_type_t
 
struct  _statement_t
 
struct  _warning_t
 

Macros

#define TRUE   1
 
#define FALSE   0
 
#define TYPE_BASIC_MAX   TYPE_BASIC_HANDLE
 
#define TYPE_BASIC_INT_MIN   TYPE_BASIC_INT8
 
#define TYPE_BASIC_INT_MAX   TYPE_BASIC_HYPER
 
#define HASHMAX   64
 
#define tsENUM   1
 
#define tsSTRUCT   2
 
#define tsUNION   3
 
#define STATEMENTS_FOR_EACH_FUNC(stmt, stmts)
 

Typedefs

typedef struct _attr_t attr_t
 
typedef struct _attr_custdata_t attr_custdata_t
 
typedef struct _expr_t expr_t
 
typedef struct _type_t type_t
 
typedef struct _var_t var_t
 
typedef struct _decl_spec_t decl_spec_t
 
typedef struct _declarator_t declarator_t
 
typedef struct _typeref_t typeref_t
 
typedef struct _typelib_entry_t typelib_entry_t
 
typedef struct _importlib_t importlib_t
 
typedef struct _importinfo_t importinfo_t
 
typedef struct _typelib_t typelib_t
 
typedef struct _user_type_t user_type_t
 
typedef struct _user_type_t context_handle_t
 
typedef struct _user_type_t generic_handle_t
 
typedef struct _statement_t statement_t
 
typedef struct _warning_t warning_t
 
typedef struct list attr_list_t
 
typedef struct list str_list_t
 
typedef struct list expr_list_t
 
typedef struct list var_list_t
 
typedef struct list declarator_list_t
 
typedef struct list typeref_list_t
 
typedef struct list user_type_list_t
 
typedef struct list context_handle_list_t
 
typedef struct list generic_handle_list_t
 
typedef struct list statement_list_t
 
typedef struct list warning_list_t
 

Enumerations

enum  attr_type {
  ATTR_ACTIVATABLE , ATTR_AGGREGATABLE , ATTR_ALLOCATE , ATTR_ANNOTATION ,
  ATTR_APPOBJECT , ATTR_ASYNC , ATTR_ASYNCUUID , ATTR_AUTO_HANDLE ,
  ATTR_BINDABLE , ATTR_BROADCAST , ATTR_CALLAS , ATTR_CALLCONV ,
  ATTR_CASE , ATTR_CODE , ATTR_COMMSTATUS , ATTR_COMPOSABLE ,
  ATTR_CONTEXTHANDLE , ATTR_CONTRACT , ATTR_CONTRACTVERSION , ATTR_CONTROL ,
  ATTR_CUSTOM , ATTR_DECODE , ATTR_DEFAULT , ATTR_DEFAULT_OVERLOAD ,
  ATTR_DEFAULTBIND , ATTR_DEFAULTCOLLELEM , ATTR_DEFAULTVALUE , ATTR_DEFAULTVTABLE ,
  ATTR_DEPRECATED , ATTR_DISABLECONSISTENCYCHECK , ATTR_DISPINTERFACE , ATTR_DISPLAYBIND ,
  ATTR_DLLNAME , ATTR_DUAL , ATTR_ENABLEALLOCATE , ATTR_ENCODE ,
  ATTR_ENDPOINT , ATTR_ENTRY , ATTR_EVENTADD , ATTR_EVENTREMOVE ,
  ATTR_EXCLUSIVETO , ATTR_EXPLICIT_HANDLE , ATTR_FAULTSTATUS , ATTR_FLAGS ,
  ATTR_FORCEALLOCATE , ATTR_HANDLE , ATTR_HELPCONTEXT , ATTR_HELPFILE ,
  ATTR_HELPSTRING , ATTR_HELPSTRINGCONTEXT , ATTR_HELPSTRINGDLL , ATTR_HIDDEN ,
  ATTR_ID , ATTR_IDEMPOTENT , ATTR_IGNORE , ATTR_IIDIS ,
  ATTR_IMMEDIATEBIND , ATTR_IMPLICIT_HANDLE , ATTR_IN , ATTR_INPUTSYNC ,
  ATTR_LENGTHIS , ATTR_LIBLCID , ATTR_LICENSED , ATTR_LOCAL ,
  ATTR_MARSHALING_BEHAVIOR , ATTR_MAYBE , ATTR_MESSAGE , ATTR_NOCODE ,
  ATTR_NONBROWSABLE , ATTR_NONCREATABLE , ATTR_NONEXTENSIBLE , ATTR_NOTIFY ,
  ATTR_NOTIFYFLAG , ATTR_OBJECT , ATTR_ODL , ATTR_OLEAUTOMATION ,
  ATTR_OPTIMIZE , ATTR_OPTIONAL , ATTR_OUT , ATTR_OVERLOAD ,
  ATTR_PARAMLCID , ATTR_PARTIALIGNORE , ATTR_POINTERDEFAULT , ATTR_POINTERTYPE ,
  ATTR_PROGID , ATTR_PROPGET , ATTR_PROPPUT , ATTR_PROPPUTREF ,
  ATTR_PROTECTED , ATTR_PROXY , ATTR_PUBLIC , ATTR_RANGE ,
  ATTR_READONLY , ATTR_REPRESENTAS , ATTR_REQUESTEDIT , ATTR_RESTRICTED ,
  ATTR_RETVAL , ATTR_SIZEIS , ATTR_SOURCE , ATTR_STATIC ,
  ATTR_STRICTCONTEXTHANDLE , ATTR_STRING , ATTR_SWITCHIS , ATTR_SWITCHTYPE ,
  ATTR_THREADING , ATTR_TRANSMITAS , ATTR_UIDEFAULT , ATTR_USERMARSHAL ,
  ATTR_USESGETLASTERROR , ATTR_UUID , ATTR_V1ENUM , ATTR_VARARG ,
  ATTR_VERSION , ATTR_VIPROGID , ATTR_WIREMARSHAL
}
 
enum  expr_type {
  EXPR_COMPLEX = 1 , EXPR_UNARY = 2 , EXPR_PROPVAL = 3 , EXPR_SVAL = 4 ,
  EXPR_IVAL = 5 , EXPR_BVAL = 6 , EXPR_VOID , EXPR_NUM ,
  EXPR_DOUBLE , EXPR_IDENTIFIER , EXPR_NEG , EXPR_NOT ,
  EXPR_PPTR , EXPR_CAST , EXPR_SIZEOF , EXPR_SHL ,
  EXPR_SHR , EXPR_MUL , EXPR_DIV , EXPR_ADD ,
  EXPR_SUB , EXPR_AND , EXPR_OR , EXPR_COND ,
  EXPR_TRUEFALSE , EXPR_ADDRESSOF , EXPR_MEMBER , EXPR_ARRAY ,
  EXPR_MOD , EXPR_LOGOR , EXPR_LOGAND , EXPR_XOR ,
  EXPR_EQUALITY , EXPR_INEQUALITY , EXPR_GTR , EXPR_LESS ,
  EXPR_GTREQL , EXPR_LESSEQL , EXPR_LOGNOT , EXPR_POS ,
  EXPR_STRLIT , EXPR_WSTRLIT , EXPR_CHARCONST
}
 
enum  type_kind {
  TKIND_PRIMITIVE = -1 , TKIND_ENUM , TKIND_RECORD , TKIND_MODULE ,
  TKIND_INTERFACE , TKIND_DISPATCH , TKIND_COCLASS , TKIND_ALIAS ,
  TKIND_UNION , TKIND_MAX
}
 
enum  storage_class { STG_NONE , STG_STATIC , STG_EXTERN , STG_REGISTER }
 
enum  type_qualifier { TYPE_QUALIFIER_CONST = 1 }
 
enum  function_specifier { FUNCTION_SPECIFIER_INLINE = 1 }
 
enum  statement_type {
  STMT_LIBRARY , STMT_DECLARATION , STMT_TYPE , STMT_TYPEREF ,
  STMT_MODULE , STMT_TYPEDEF , STMT_IMPORT , STMT_IMPORTLIB ,
  STMT_PRAGMA , STMT_CPPQUOTE
}
 
enum  threading_type {
  THREADING_APARTMENT = 1 , THREADING_NEUTRAL , THREADING_SINGLE , THREADING_FREE ,
  THREADING_BOTH
}
 
enum  marshaling_type { MARSHALING_INVALID = 0 , MARSHALING_NONE , MARSHALING_AGILE , MARSHALING_STANDARD }
 
enum  type_basic_type {
  TYPE_BASIC_INT8 = 1 , TYPE_BASIC_INT16 , TYPE_BASIC_INT32 , TYPE_BASIC_INT64 ,
  TYPE_BASIC_INT , TYPE_BASIC_INT3264 , TYPE_BASIC_LONG , TYPE_BASIC_CHAR ,
  TYPE_BASIC_HYPER , TYPE_BASIC_BYTE , TYPE_BASIC_WCHAR , TYPE_BASIC_FLOAT ,
  TYPE_BASIC_DOUBLE , TYPE_BASIC_ERROR_STATUS_T , TYPE_BASIC_HANDLE
}
 
enum  type_type {
  TYPE_VOID , TYPE_BASIC , TYPE_ENUM , TYPE_STRUCT ,
  TYPE_ENCAPSULATED_UNION , TYPE_UNION , TYPE_ALIAS , TYPE_MODULE ,
  TYPE_COCLASS , TYPE_FUNCTION , TYPE_INTERFACE , TYPE_POINTER ,
  TYPE_ARRAY , TYPE_BITFIELD , TYPE_APICONTRACT , TYPE_RUNTIMECLASS ,
  TYPE_PARAMETERIZED_TYPE , TYPE_PARAMETER , TYPE_DELEGATE
}
 
enum  syskind_t { SYS_WIN16 , SYS_WIN32 , SYS_MAC , SYS_WIN64 }
 

Functions

void check_for_additional_prototype_types (type_t *type)
 
void init_types (void)
 
type_talloc_type (void)
 
void set_all_tfswrite (int val)
 
void clear_all_offsets (void)
 
var_tfind_const (const char *name, int f)
 
type_tfind_type (const char *name, struct namespace *namespace, int t)
 
type_tmake_type (enum type_type type)
 
type_tget_type (enum type_type type, char *name, struct namespace *namespace, int t)
 
type_treg_type (type_t *type, const char *name, struct namespace *namespace, int t)
 
var_tmake_var (char *name)
 
var_list_tappend_var (var_list_t *list, var_t *var)
 
charformat_namespace (struct namespace *namespace, const char *prefix, const char *separator, const char *suffix, const char *abi_prefix)
 
charformat_parameterized_type_name (type_t *type, typeref_list_t *params)
 
static enum type_type type_get_type_detect_alias (const type_t *type)
 
static int statements_has_func (const statement_list_t *stmts)
 
static int is_global_namespace (const struct namespace *namespace)
 
static decl_spec_tinit_declspec (decl_spec_t *declspec, type_t *type)
 

Variables

user_type_list_t user_type_list
 
context_handle_list_t context_handle_list
 
generic_handle_list_t generic_handle_list
 

Macro Definition Documentation

◆ FALSE

#define FALSE   0

Definition at line 39 of file widltypes.h.

◆ HASHMAX

#define HASHMAX   64

Definition at line 466 of file widltypes.h.

◆ STATEMENTS_FOR_EACH_FUNC

#define STATEMENTS_FOR_EACH_FUNC (   stmt,
  stmts 
)
Value:
if (stmts) LIST_FOR_EACH_ENTRY( stmt, stmts, statement_t, entry ) \
if (stmt->type == STMT_DECLARATION && stmt->u.var->declspec.stgclass == STG_NONE && \
type_get_type_detect_alias(stmt->u.var->declspec.type) == TYPE_FUNCTION)
uint32_t entry
Definition: isohybrid.c:63
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
Definition: list.h:198
@ TYPE_FUNCTION
Definition: widltypes.h:487
@ STG_NONE
Definition: widltypes.h:247
@ STMT_DECLARATION
Definition: widltypes.h:266
static enum type_type type_get_type_detect_alias(const type_t *type)
Definition: widltypes.h:679

Definition at line 684 of file widltypes.h.

◆ TRUE

#define TRUE   1

Definition at line 38 of file widltypes.h.

◆ tsENUM

#define tsENUM   1

Definition at line 662 of file widltypes.h.

◆ tsSTRUCT

#define tsSTRUCT   2

Definition at line 663 of file widltypes.h.

◆ tsUNION

#define tsUNION   3

Definition at line 664 of file widltypes.h.

◆ TYPE_BASIC_INT_MAX

#define TYPE_BASIC_INT_MAX   TYPE_BASIC_HYPER

Definition at line 315 of file widltypes.h.

◆ TYPE_BASIC_INT_MIN

#define TYPE_BASIC_INT_MIN   TYPE_BASIC_INT8

Definition at line 314 of file widltypes.h.

◆ TYPE_BASIC_MAX

#define TYPE_BASIC_MAX   TYPE_BASIC_HANDLE

Definition at line 313 of file widltypes.h.

Typedef Documentation

◆ attr_custdata_t

Definition at line 42 of file widltypes.h.

◆ attr_list_t

Definition at line 59 of file widltypes.h.

◆ attr_t

Definition at line 41 of file widltypes.h.

◆ context_handle_list_t

Definition at line 66 of file widltypes.h.

◆ context_handle_t

Definition at line 54 of file widltypes.h.

◆ decl_spec_t

Definition at line 46 of file widltypes.h.

◆ declarator_list_t

Definition at line 63 of file widltypes.h.

◆ declarator_t

Definition at line 47 of file widltypes.h.

◆ expr_list_t

Definition at line 61 of file widltypes.h.

◆ expr_t

Definition at line 43 of file widltypes.h.

◆ generic_handle_list_t

Definition at line 67 of file widltypes.h.

◆ generic_handle_t

Definition at line 55 of file widltypes.h.

◆ importinfo_t

Definition at line 51 of file widltypes.h.

◆ importlib_t

Definition at line 50 of file widltypes.h.

◆ statement_list_t

Definition at line 68 of file widltypes.h.

◆ statement_t

Definition at line 56 of file widltypes.h.

◆ str_list_t

Definition at line 60 of file widltypes.h.

◆ type_t

Definition at line 44 of file widltypes.h.

◆ typelib_entry_t

Definition at line 49 of file widltypes.h.

◆ typelib_t

Definition at line 52 of file widltypes.h.

◆ typeref_list_t

Definition at line 64 of file widltypes.h.

◆ typeref_t

Definition at line 48 of file widltypes.h.

◆ user_type_list_t

Definition at line 65 of file widltypes.h.

◆ user_type_t

Definition at line 53 of file widltypes.h.

◆ var_list_t

Definition at line 62 of file widltypes.h.

◆ var_t

typedef struct _var_t var_t

Definition at line 45 of file widltypes.h.

◆ warning_list_t

Definition at line 69 of file widltypes.h.

◆ warning_t

Definition at line 57 of file widltypes.h.

Enumeration Type Documentation

◆ attr_type

Enumerator
ATTR_ACTIVATABLE 
ATTR_AGGREGATABLE 
ATTR_ALLOCATE 
ATTR_ANNOTATION 
ATTR_APPOBJECT 
ATTR_ASYNC 
ATTR_ASYNCUUID 
ATTR_AUTO_HANDLE 
ATTR_BINDABLE 
ATTR_BROADCAST 
ATTR_CALLAS 
ATTR_CALLCONV 
ATTR_CASE 
ATTR_CODE 
ATTR_COMMSTATUS 
ATTR_COMPOSABLE 
ATTR_CONTEXTHANDLE 
ATTR_CONTRACT 
ATTR_CONTRACTVERSION 
ATTR_CONTROL 
ATTR_CUSTOM 
ATTR_DECODE 
ATTR_DEFAULT 
ATTR_DEFAULT_OVERLOAD 
ATTR_DEFAULTBIND 
ATTR_DEFAULTCOLLELEM 
ATTR_DEFAULTVALUE 
ATTR_DEFAULTVTABLE 
ATTR_DEPRECATED 
ATTR_DISABLECONSISTENCYCHECK 
ATTR_DISPINTERFACE 
ATTR_DISPLAYBIND 
ATTR_DLLNAME 
ATTR_DUAL 
ATTR_ENABLEALLOCATE 
ATTR_ENCODE 
ATTR_ENDPOINT 
ATTR_ENTRY 
ATTR_EVENTADD 
ATTR_EVENTREMOVE 
ATTR_EXCLUSIVETO 
ATTR_EXPLICIT_HANDLE 
ATTR_FAULTSTATUS 
ATTR_FLAGS 
ATTR_FORCEALLOCATE 
ATTR_HANDLE 
ATTR_HELPCONTEXT 
ATTR_HELPFILE 
ATTR_HELPSTRING 
ATTR_HELPSTRINGCONTEXT 
ATTR_HELPSTRINGDLL 
ATTR_HIDDEN 
ATTR_ID 
ATTR_IDEMPOTENT 
ATTR_IGNORE 
ATTR_IIDIS 
ATTR_IMMEDIATEBIND 
ATTR_IMPLICIT_HANDLE 
ATTR_IN 
ATTR_INPUTSYNC 
ATTR_LENGTHIS 
ATTR_LIBLCID 
ATTR_LICENSED 
ATTR_LOCAL 
ATTR_MARSHALING_BEHAVIOR 
ATTR_MAYBE 
ATTR_MESSAGE 
ATTR_NOCODE 
ATTR_NONBROWSABLE 
ATTR_NONCREATABLE 
ATTR_NONEXTENSIBLE 
ATTR_NOTIFY 
ATTR_NOTIFYFLAG 
ATTR_OBJECT 
ATTR_ODL 
ATTR_OLEAUTOMATION 
ATTR_OPTIMIZE 
ATTR_OPTIONAL 
ATTR_OUT 
ATTR_OVERLOAD 
ATTR_PARAMLCID 
ATTR_PARTIALIGNORE 
ATTR_POINTERDEFAULT 
ATTR_POINTERTYPE 
ATTR_PROGID 
ATTR_PROPGET 
ATTR_PROPPUT 
ATTR_PROPPUTREF 
ATTR_PROTECTED 
ATTR_PROXY 
ATTR_PUBLIC 
ATTR_RANGE 
ATTR_READONLY 
ATTR_REPRESENTAS 
ATTR_REQUESTEDIT 
ATTR_RESTRICTED 
ATTR_RETVAL 
ATTR_SIZEIS 
ATTR_SOURCE 
ATTR_STATIC 
ATTR_STRICTCONTEXTHANDLE 
ATTR_STRING 
ATTR_SWITCHIS 
ATTR_SWITCHTYPE 
ATTR_THREADING 
ATTR_TRANSMITAS 
ATTR_UIDEFAULT 
ATTR_USERMARSHAL 
ATTR_USESGETLASTERROR 
ATTR_UUID 
ATTR_V1ENUM 
ATTR_VARARG 
ATTR_VERSION 
ATTR_VIPROGID 
ATTR_WIREMARSHAL 

Definition at line 71 of file widltypes.h.

72{
84 ATTR_CALLCONV, /* calling convention pseudo-attribute */
106 ATTR_DUAL,
125 ATTR_ID,
131 ATTR_IN,
147 ATTR_ODL,
151 ATTR_OUT,
182 ATTR_UUID,
188};
@ ATTR_BROADCAST
Definition: widltypes.h:82
@ ATTR_IN
Definition: widltypes.h:131
@ ATTR_SIZEIS
Definition: widltypes.h:170
@ ATTR_VIPROGID
Definition: widltypes.h:186
@ ATTR_REPRESENTAS
Definition: widltypes.h:166
@ ATTR_PARTIALIGNORE
Definition: widltypes.h:154
@ ATTR_APPOBJECT
Definition: widltypes.h:77
@ ATTR_POINTERTYPE
Definition: widltypes.h:156
@ ATTR_PROTECTED
Definition: widltypes.h:161
@ ATTR_OLEAUTOMATION
Definition: widltypes.h:148
@ ATTR_SWITCHTYPE
Definition: widltypes.h:176
@ ATTR_RETVAL
Definition: widltypes.h:169
@ ATTR_ACTIVATABLE
Definition: widltypes.h:73
@ ATTR_ENABLEALLOCATE
Definition: widltypes.h:107
@ ATTR_DEPRECATED
Definition: widltypes.h:101
@ ATTR_AUTO_HANDLE
Definition: widltypes.h:80
@ ATTR_CONTEXTHANDLE
Definition: widltypes.h:89
@ ATTR_READONLY
Definition: widltypes.h:165
@ ATTR_DECODE
Definition: widltypes.h:94
@ ATTR_EVENTREMOVE
Definition: widltypes.h:112
@ ATTR_PROPPUT
Definition: widltypes.h:159
@ ATTR_FORCEALLOCATE
Definition: widltypes.h:117
@ ATTR_EXPLICIT_HANDLE
Definition: widltypes.h:114
@ ATTR_ASYNC
Definition: widltypes.h:78
@ ATTR_INPUTSYNC
Definition: widltypes.h:132
@ ATTR_DLLNAME
Definition: widltypes.h:105
@ ATTR_DEFAULT_OVERLOAD
Definition: widltypes.h:96
@ ATTR_DEFAULTBIND
Definition: widltypes.h:97
@ ATTR_VARARG
Definition: widltypes.h:184
@ ATTR_CASE
Definition: widltypes.h:85
@ ATTR_NOTIFY
Definition: widltypes.h:144
@ ATTR_ENCODE
Definition: widltypes.h:108
@ ATTR_CONTRACTVERSION
Definition: widltypes.h:91
@ ATTR_UUID
Definition: widltypes.h:182
@ ATTR_DEFAULT
Definition: widltypes.h:95
@ ATTR_TRANSMITAS
Definition: widltypes.h:178
@ ATTR_HELPFILE
Definition: widltypes.h:120
@ ATTR_NOCODE
Definition: widltypes.h:140
@ ATTR_NONEXTENSIBLE
Definition: widltypes.h:143
@ ATTR_EXCLUSIVETO
Definition: widltypes.h:113
@ ATTR_DEFAULTVTABLE
Definition: widltypes.h:100
@ ATTR_PROPPUTREF
Definition: widltypes.h:160
@ ATTR_POINTERDEFAULT
Definition: widltypes.h:155
@ ATTR_ANNOTATION
Definition: widltypes.h:76
@ ATTR_HANDLE
Definition: widltypes.h:118
@ ATTR_IMMEDIATEBIND
Definition: widltypes.h:129
@ ATTR_RANGE
Definition: widltypes.h:164
@ ATTR_ALLOCATE
Definition: widltypes.h:75
@ ATTR_MAYBE
Definition: widltypes.h:138
@ ATTR_DEFAULTCOLLELEM
Definition: widltypes.h:98
@ ATTR_THREADING
Definition: widltypes.h:177
@ ATTR_MESSAGE
Definition: widltypes.h:139
@ ATTR_IDEMPOTENT
Definition: widltypes.h:126
@ ATTR_IMPLICIT_HANDLE
Definition: widltypes.h:130
@ ATTR_PROXY
Definition: widltypes.h:162
@ ATTR_ENTRY
Definition: widltypes.h:110
@ ATTR_OBJECT
Definition: widltypes.h:146
@ ATTR_OVERLOAD
Definition: widltypes.h:152
@ ATTR_VERSION
Definition: widltypes.h:185
@ ATTR_REQUESTEDIT
Definition: widltypes.h:167
@ ATTR_CONTROL
Definition: widltypes.h:92
@ ATTR_DISABLECONSISTENCYCHECK
Definition: widltypes.h:102
@ ATTR_HELPSTRINGDLL
Definition: widltypes.h:123
@ ATTR_LIBLCID
Definition: widltypes.h:134
@ ATTR_UIDEFAULT
Definition: widltypes.h:179
@ ATTR_LICENSED
Definition: widltypes.h:135
@ ATTR_LENGTHIS
Definition: widltypes.h:133
@ ATTR_LOCAL
Definition: widltypes.h:136
@ ATTR_IIDIS
Definition: widltypes.h:128
@ ATTR_STRING
Definition: widltypes.h:174
@ ATTR_USERMARSHAL
Definition: widltypes.h:180
@ ATTR_DUAL
Definition: widltypes.h:106
@ ATTR_DISPLAYBIND
Definition: widltypes.h:104
@ ATTR_ODL
Definition: widltypes.h:147
@ ATTR_STATIC
Definition: widltypes.h:172
@ ATTR_NONCREATABLE
Definition: widltypes.h:142
@ ATTR_COMPOSABLE
Definition: widltypes.h:88
@ ATTR_EVENTADD
Definition: widltypes.h:111
@ ATTR_OUT
Definition: widltypes.h:151
@ ATTR_PUBLIC
Definition: widltypes.h:163
@ ATTR_CALLCONV
Definition: widltypes.h:84
@ ATTR_OPTIMIZE
Definition: widltypes.h:149
@ ATTR_STRICTCONTEXTHANDLE
Definition: widltypes.h:173
@ ATTR_PROPGET
Definition: widltypes.h:158
@ ATTR_COMMSTATUS
Definition: widltypes.h:87
@ ATTR_ENDPOINT
Definition: widltypes.h:109
@ ATTR_IGNORE
Definition: widltypes.h:127
@ ATTR_CONTRACT
Definition: widltypes.h:90
@ ATTR_AGGREGATABLE
Definition: widltypes.h:74
@ ATTR_HELPSTRINGCONTEXT
Definition: widltypes.h:122
@ ATTR_BINDABLE
Definition: widltypes.h:81
@ ATTR_OPTIONAL
Definition: widltypes.h:150
@ ATTR_FAULTSTATUS
Definition: widltypes.h:115
@ ATTR_RESTRICTED
Definition: widltypes.h:168
@ ATTR_ID
Definition: widltypes.h:125
@ ATTR_NOTIFYFLAG
Definition: widltypes.h:145
@ ATTR_V1ENUM
Definition: widltypes.h:183
@ ATTR_DISPINTERFACE
Definition: widltypes.h:103
@ ATTR_HIDDEN
Definition: widltypes.h:124
@ ATTR_CODE
Definition: widltypes.h:86
@ ATTR_PROGID
Definition: widltypes.h:157
@ ATTR_HELPCONTEXT
Definition: widltypes.h:119
@ ATTR_HELPSTRING
Definition: widltypes.h:121
@ ATTR_CALLAS
Definition: widltypes.h:83
@ ATTR_PARAMLCID
Definition: widltypes.h:153
@ ATTR_WIREMARSHAL
Definition: widltypes.h:187
@ ATTR_NONBROWSABLE
Definition: widltypes.h:141
@ ATTR_SOURCE
Definition: widltypes.h:171
@ ATTR_MARSHALING_BEHAVIOR
Definition: widltypes.h:137
@ ATTR_CUSTOM
Definition: widltypes.h:93
@ ATTR_DEFAULTVALUE
Definition: widltypes.h:99
@ ATTR_FLAGS
Definition: widltypes.h:116
@ ATTR_SWITCHIS
Definition: widltypes.h:175
@ ATTR_USESGETLASTERROR
Definition: widltypes.h:181
@ ATTR_ASYNCUUID
Definition: widltypes.h:79

◆ expr_type

Enumerator
EXPR_COMPLEX 
EXPR_UNARY 
EXPR_PROPVAL 
EXPR_SVAL 
EXPR_IVAL 
EXPR_BVAL 
EXPR_VOID 
EXPR_NUM 
EXPR_DOUBLE 
EXPR_IDENTIFIER 
EXPR_NEG 
EXPR_NOT 
EXPR_PPTR 
EXPR_CAST 
EXPR_SIZEOF 
EXPR_SHL 
EXPR_SHR 
EXPR_MUL 
EXPR_DIV 
EXPR_ADD 
EXPR_SUB 
EXPR_AND 
EXPR_OR 
EXPR_COND 
EXPR_TRUEFALSE 
EXPR_ADDRESSOF 
EXPR_MEMBER 
EXPR_ARRAY 
EXPR_MOD 
EXPR_LOGOR 
EXPR_LOGAND 
EXPR_XOR 
EXPR_EQUALITY 
EXPR_INEQUALITY 
EXPR_GTR 
EXPR_LESS 
EXPR_GTREQL 
EXPR_LESSEQL 
EXPR_LOGNOT 
EXPR_POS 
EXPR_STRLIT 
EXPR_WSTRLIT 
EXPR_CHARCONST 

Definition at line 190 of file widltypes.h.

191{
192 EXPR_VOID,
193 EXPR_NUM,
196 EXPR_NEG,
197 EXPR_NOT,
198 EXPR_PPTR,
199 EXPR_CAST,
201 EXPR_SHL,
202 EXPR_SHR,
203 EXPR_MUL,
204 EXPR_DIV,
205 EXPR_ADD,
206 EXPR_SUB,
207 EXPR_AND,
208 EXPR_OR,
209 EXPR_COND,
214 EXPR_MOD,
217 EXPR_XOR,
220 EXPR_GTR,
221 EXPR_LESS,
225 EXPR_POS,
229};
@ EXPR_MEMBER
Definition: widltypes.h:212
@ EXPR_LESS
Definition: widltypes.h:221
@ EXPR_CAST
Definition: widltypes.h:199
@ EXPR_ARRAY
Definition: widltypes.h:213
@ EXPR_MOD
Definition: widltypes.h:214
@ EXPR_LOGOR
Definition: widltypes.h:215
@ EXPR_LOGAND
Definition: widltypes.h:216
@ EXPR_DOUBLE
Definition: widltypes.h:194
@ EXPR_TRUEFALSE
Definition: widltypes.h:210
@ EXPR_CHARCONST
Definition: widltypes.h:228
@ EXPR_VOID
Definition: widltypes.h:192
@ EXPR_IDENTIFIER
Definition: widltypes.h:195
@ EXPR_SHR
Definition: widltypes.h:202
@ EXPR_LOGNOT
Definition: widltypes.h:224
@ EXPR_NEG
Definition: widltypes.h:196
@ EXPR_SHL
Definition: widltypes.h:201
@ EXPR_DIV
Definition: widltypes.h:204
@ EXPR_ADD
Definition: widltypes.h:205
@ EXPR_GTR
Definition: widltypes.h:220
@ EXPR_EQUALITY
Definition: widltypes.h:218
@ EXPR_INEQUALITY
Definition: widltypes.h:219
@ EXPR_POS
Definition: widltypes.h:225
@ EXPR_NOT
Definition: widltypes.h:197
@ EXPR_LESSEQL
Definition: widltypes.h:223
@ EXPR_MUL
Definition: widltypes.h:203
@ EXPR_COND
Definition: widltypes.h:209
@ EXPR_WSTRLIT
Definition: widltypes.h:227
@ EXPR_OR
Definition: widltypes.h:208
@ EXPR_STRLIT
Definition: widltypes.h:226
@ EXPR_NUM
Definition: widltypes.h:193
@ EXPR_PPTR
Definition: widltypes.h:198
@ EXPR_SIZEOF
Definition: widltypes.h:200
@ EXPR_SUB
Definition: widltypes.h:206
@ EXPR_XOR
Definition: widltypes.h:217
@ EXPR_GTREQL
Definition: widltypes.h:222
@ EXPR_AND
Definition: widltypes.h:207
@ EXPR_ADDRESSOF
Definition: widltypes.h:211

◆ function_specifier

Enumerator
FUNCTION_SPECIFIER_INLINE 

Definition at line 258 of file widltypes.h.

259{
261};
@ FUNCTION_SPECIFIER_INLINE
Definition: widltypes.h:260

◆ marshaling_type

Enumerator
MARSHALING_INVALID 
MARSHALING_NONE 
MARSHALING_AGILE 
MARSHALING_STANDARD 

Definition at line 286 of file widltypes.h.

287{
292};
@ MARSHALING_AGILE
Definition: widltypes.h:290
@ MARSHALING_INVALID
Definition: widltypes.h:288
@ MARSHALING_STANDARD
Definition: widltypes.h:291
@ MARSHALING_NONE
Definition: widltypes.h:289

◆ statement_type

Enumerator
STMT_LIBRARY 
STMT_DECLARATION 
STMT_TYPE 
STMT_TYPEREF 
STMT_MODULE 
STMT_TYPEDEF 
STMT_IMPORT 
STMT_IMPORTLIB 
STMT_PRAGMA 
STMT_CPPQUOTE 

Definition at line 263 of file widltypes.h.

264{
267 STMT_TYPE,
275};
@ STMT_MODULE
Definition: widltypes.h:269
@ STMT_IMPORT
Definition: widltypes.h:271
@ STMT_IMPORTLIB
Definition: widltypes.h:272
@ STMT_TYPE
Definition: widltypes.h:267
@ STMT_LIBRARY
Definition: widltypes.h:265
@ STMT_TYPEDEF
Definition: widltypes.h:270
@ STMT_CPPQUOTE
Definition: widltypes.h:274
@ STMT_TYPEREF
Definition: widltypes.h:268
@ STMT_PRAGMA
Definition: widltypes.h:273

◆ storage_class

Enumerator
STG_NONE 
STG_STATIC 
STG_EXTERN 
STG_REGISTER 

Definition at line 245 of file widltypes.h.

246{
247 STG_NONE,
251};
@ STG_REGISTER
Definition: widltypes.h:250
@ STG_EXTERN
Definition: widltypes.h:249
@ STG_STATIC
Definition: widltypes.h:248

◆ syskind_t

Enumerator
SYS_WIN16 
SYS_WIN32 
SYS_MAC 
SYS_WIN64 

Definition at line 645 of file widltypes.h.

645 {
646 SYS_WIN16,
647 SYS_WIN32,
648 SYS_MAC,
650} syskind_t;
syskind_t
Definition: widltypes.h:645
@ SYS_WIN16
Definition: widltypes.h:646
@ SYS_WIN32
Definition: widltypes.h:647
@ SYS_WIN64
Definition: widltypes.h:649
@ SYS_MAC
Definition: widltypes.h:648

◆ threading_type

Enumerator
THREADING_APARTMENT 
THREADING_NEUTRAL 
THREADING_SINGLE 
THREADING_FREE 
THREADING_BOTH 

Definition at line 277 of file widltypes.h.

278{
284};
@ THREADING_APARTMENT
Definition: widltypes.h:279
@ THREADING_BOTH
Definition: widltypes.h:283
@ THREADING_SINGLE
Definition: widltypes.h:281
@ THREADING_FREE
Definition: widltypes.h:282
@ THREADING_NEUTRAL
Definition: widltypes.h:280

◆ type_basic_type

Enumerator
TYPE_BASIC_INT8 
TYPE_BASIC_INT16 
TYPE_BASIC_INT32 
TYPE_BASIC_INT64 
TYPE_BASIC_INT 
TYPE_BASIC_INT3264 
TYPE_BASIC_LONG 
TYPE_BASIC_CHAR 
TYPE_BASIC_HYPER 
TYPE_BASIC_BYTE 
TYPE_BASIC_WCHAR 
TYPE_BASIC_FLOAT 
TYPE_BASIC_DOUBLE 
TYPE_BASIC_ERROR_STATUS_T 
TYPE_BASIC_HANDLE 

Definition at line 294 of file widltypes.h.

295{
296 TYPE_BASIC_INT8 = 1,
311};
@ TYPE_BASIC_DOUBLE
Definition: widltypes.h:308
@ TYPE_BASIC_INT32
Definition: widltypes.h:298
@ TYPE_BASIC_ERROR_STATUS_T
Definition: widltypes.h:309
@ TYPE_BASIC_CHAR
Definition: widltypes.h:303
@ TYPE_BASIC_WCHAR
Definition: widltypes.h:306
@ TYPE_BASIC_INT16
Definition: widltypes.h:297
@ TYPE_BASIC_HYPER
Definition: widltypes.h:304
@ TYPE_BASIC_HANDLE
Definition: widltypes.h:310
@ TYPE_BASIC_INT8
Definition: widltypes.h:296
@ TYPE_BASIC_INT3264
Definition: widltypes.h:301
@ TYPE_BASIC_LONG
Definition: widltypes.h:302
@ TYPE_BASIC_INT64
Definition: widltypes.h:299
@ TYPE_BASIC_BYTE
Definition: widltypes.h:305
@ TYPE_BASIC_INT
Definition: widltypes.h:300
@ TYPE_BASIC_FLOAT
Definition: widltypes.h:307

◆ type_kind

Enumerator
TKIND_PRIMITIVE 
TKIND_ENUM 
TKIND_RECORD 
TKIND_MODULE 
TKIND_INTERFACE 
TKIND_DISPATCH 
TKIND_COCLASS 
TKIND_ALIAS 
TKIND_UNION 
TKIND_MAX 

Definition at line 231 of file widltypes.h.

232{
233 TKIND_PRIMITIVE = -1,
243};
@ TKIND_MODULE
Definition: widltypes.h:236
@ TKIND_COCLASS
Definition: widltypes.h:239
@ TKIND_RECORD
Definition: widltypes.h:235
@ TKIND_MAX
Definition: widltypes.h:242
@ TKIND_ENUM
Definition: widltypes.h:234
@ TKIND_UNION
Definition: widltypes.h:241
@ TKIND_ALIAS
Definition: widltypes.h:240
@ TKIND_DISPATCH
Definition: widltypes.h:238
@ TKIND_INTERFACE
Definition: widltypes.h:237
@ TKIND_PRIMITIVE
Definition: widltypes.h:233

◆ type_qualifier

Enumerator
TYPE_QUALIFIER_CONST 

Definition at line 253 of file widltypes.h.

254{
256};
@ TYPE_QUALIFIER_CONST
Definition: widltypes.h:255

◆ type_type

Enumerator
TYPE_VOID 
TYPE_BASIC 
TYPE_ENUM 
TYPE_STRUCT 
TYPE_ENCAPSULATED_UNION 
TYPE_UNION 
TYPE_ALIAS 
TYPE_MODULE 
TYPE_COCLASS 
TYPE_FUNCTION 
TYPE_INTERFACE 
TYPE_POINTER 
TYPE_ARRAY 
TYPE_BITFIELD 
TYPE_APICONTRACT 
TYPE_RUNTIMECLASS 
TYPE_PARAMETERIZED_TYPE 
TYPE_PARAMETER 
TYPE_DELEGATE 

Definition at line 476 of file widltypes.h.

477{
478 TYPE_VOID,
479 TYPE_BASIC, /* ints, floats and handles */
480 TYPE_ENUM,
497};
@ TYPE_PARAMETER
Definition: widltypes.h:495
@ TYPE_ENUM
Definition: widltypes.h:480
@ TYPE_BITFIELD
Definition: widltypes.h:491
@ TYPE_BASIC
Definition: widltypes.h:479
@ TYPE_UNION
Definition: widltypes.h:483
@ TYPE_ALIAS
Definition: widltypes.h:484
@ TYPE_PARAMETERIZED_TYPE
Definition: widltypes.h:494
@ TYPE_POINTER
Definition: widltypes.h:489
@ TYPE_VOID
Definition: widltypes.h:478
@ TYPE_ENCAPSULATED_UNION
Definition: widltypes.h:482
@ TYPE_COCLASS
Definition: widltypes.h:486
@ TYPE_STRUCT
Definition: widltypes.h:481
@ TYPE_MODULE
Definition: widltypes.h:485
@ TYPE_DELEGATE
Definition: widltypes.h:496
@ TYPE_RUNTIMECLASS
Definition: widltypes.h:493
@ TYPE_INTERFACE
Definition: widltypes.h:488
@ TYPE_ARRAY
Definition: widltypes.h:490
@ TYPE_APICONTRACT
Definition: widltypes.h:492

Function Documentation

◆ alloc_type()

type_t * alloc_type ( void  )

Referenced by duptype(), make_type(), and MapViewOfFile3().

◆ append_var()

var_list_t * append_var ( var_list_t list,
var_t var 
)

◆ check_for_additional_prototype_types()

void check_for_additional_prototype_types ( type_t type)

Definition at line 667 of file header.c.

668{
669 if (!type) return;
670 for (;;) {
671 const char *name = type->name;
672 if (type->user_types_registered) break;
673 type->user_types_registered = 1;
674 if (is_attr(type->attrs, ATTR_CONTEXTHANDLE)) {
676 {
677 context_handle_t *ch = xmalloc(sizeof(*ch));
678 ch->name = xstrdup(name);
680 }
681 /* don't carry on parsing fields within this type */
682 break;
683 }
684 if ((type_get_type(type) != TYPE_BASIC ||
686 is_attr(type->attrs, ATTR_HANDLE)) {
688 {
689 generic_handle_t *gh = xmalloc(sizeof(*gh));
690 gh->name = xstrdup(name);
692 }
693 /* don't carry on parsing fields within this type */
694 break;
695 }
696 if (is_attr(type->attrs, ATTR_WIREMARSHAL)) {
698 {
699 user_type_t *ut = xmalloc(sizeof *ut);
700 ut->name = xstrdup(name);
702 }
703 /* don't carry on parsing fields within this type as we are already
704 * using a wire marshaled type */
705 break;
706 }
707 else if (type_is_complete(type))
708 {
709 var_list_t *vars;
710 const var_t *v;
712 {
713 case TYPE_ENUM:
715 break;
716 case TYPE_STRUCT:
718 break;
719 case TYPE_UNION:
721 break;
722 default:
723 vars = NULL;
724 break;
725 }
726 if (vars) LIST_FOR_EACH_ENTRY( v, vars, const var_t, entry )
728 }
729
730 if (type_is_alias(type))
732 else if (is_ptr(type))
734 else if (is_array(type))
736 else
737 break;
738 }
739}
char * xstrdup(const char *s)
Definition: uimain.c:768
void * xmalloc(int size)
Definition: uimain.c:747
static void list_add_tail(struct list_entry *head, struct list_entry *entry)
Definition: list.h:83
Definition: list.h:37
#define NULL
Definition: types.h:112
const GLdouble * v
Definition: gl.h:2040
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
int is_attr(const attr_list_t *list, enum attr_type attr_type)
Definition: attribute.c:45
void check_for_additional_prototype_types(type_t *type)
Definition: header.c:667
static int generic_handle_registered(const char *name)
Definition: header.c:616
static int user_type_registered(const char *name)
Definition: header.c:598
static int context_handle_registered(const char *name)
Definition: header.c:607
generic_handle_list_t generic_handle_list
Definition: header.c:41
user_type_list_t user_type_list
Definition: header.c:39
static int is_ptr(const type_t *t)
Definition: header.h:55
static int is_array(const type_t *t)
Definition: header.h:60
struct list entry
Definition: widltypes.h:620
const char * name
Definition: widltypes.h:621
Definition: name.c:39
WCHAR * name
Definition: name.c:42
static enum type_type type_get_type(const type_t *type)
Definition: typetree.h:113
static var_list_t * type_union_get_cases(const type_t *type)
Definition: typetree.h:184
static type_t * type_array_get_element_type(const type_t *type)
Definition: typetree.h:345
static type_t * type_alias_get_aliasee_type(const type_t *type)
Definition: typetree.h:373
static enum type_basic_type type_basic_get_type(const type_t *type)
Definition: typetree.h:118
static var_list_t * type_struct_get_fields(const type_t *type)
Definition: typetree.h:132
static int type_is_complete(const type_t *type)
Definition: typetree.h:255
static type_t * type_pointer_get_ref_type(const type_t *type)
Definition: typetree.h:424
static int type_is_alias(const type_t *type)
Definition: typetree.h:357
static var_list_t * type_enum_get_values(const type_t *type)
Definition: typetree.h:163

Referenced by check_for_additional_prototype_types().

◆ clear_all_offsets()

void clear_all_offsets ( void  )

Referenced by write_formatstringsdecl().

◆ find_const()

var_t * find_const ( const char name,
int  f 
)

Referenced by find_identifier(), and make_exprs().

◆ find_type()

◆ format_namespace()

char * format_namespace ( struct namespace namespace,
const char prefix,
const char separator,
const char suffix,
const char abi_prefix 
)

Definition at line 279 of file typetree.c.

280{
281 size_t len = 0;
282 char *buf = NULL;
283 append_namespaces(&buf, &len, 0, namespace, prefix, separator, suffix, abi_prefix);
284 return buf;
285}
static const WCHAR separator[]
Definition: asmname.c:65
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
GLenum GLsizei len
Definition: glext.h:6722
Character const *const prefix
Definition: tempnam.cpp:195
static size_t append_namespaces(char **buf, size_t *len, size_t pos, struct namespace *namespace, const char *prefix, const char *separator, const char *suffix, const char *abi_prefix)
Definition: typetree.c:125

Referenced by compute_delegate_iface_names(), format_apicontract_macro(), write_runtimeclass(), write_runtimeclasses_registry(), and write_widl_using_macros().

◆ format_parameterized_type_name()

char * format_parameterized_type_name ( type_t type,
typeref_list_t params 
)

Definition at line 287 of file typetree.c.

288{
289 size_t len = 0, pos = 0;
290 char *buf = NULL;
291 typeref_t *ref;
292
293 pos += strappend(&buf, &len, pos, "%s<", type->name);
295 {
297 pos += strappend(&buf, &len, pos, "%s", type->qualified_name);
298 pos += append_pointer_stars(&buf, &len, pos, ref->type);
299 if (list_next(params, &ref->entry)) pos += strappend(&buf, &len, pos, ",");
300 }
301 pos += strappend(&buf, &len, pos, " >");
302
303 return buf;
304}
GLenum const GLfloat * params
Definition: glext.h:5645
__WINE_SERVER_LIST_INLINE struct list * list_next(const struct list *list, const struct list *elem)
Definition: list.h:115
size_t strappend(char **buf, size_t *len, size_t pos, const char *fmt,...)
Definition: utils.c:120
Definition: send.c:48
static size_t append_pointer_stars(char **buf, size_t *len, size_t pos, type_t *type)
Definition: typetree.c:141
static type_t * type_pointer_get_root_type(type_t *type)
Definition: typetree.h:429

Referenced by type_parameterized_type_specialize_declare().

◆ get_type()

type_t * get_type ( enum type_type  type,
char name,
struct namespace namespace,
int  t 
)

◆ init_declspec()

static decl_spec_t * init_declspec ( decl_spec_t declspec,
type_t type 
)
inlinestatic

Definition at line 706 of file widltypes.h.

707{
708 declspec->type = type;
709 declspec->stgclass = STG_NONE;
710 declspec->qualifier = 0;
711 declspec->func_specifier = 0;
712
713 return declspec;
714}
enum function_specifier func_specifier
Definition: widltypes.h:337
enum type_qualifier qualifier
Definition: widltypes.h:336
type_t * type
Definition: widltypes.h:334
enum storage_class stgclass
Definition: widltypes.h:335

◆ init_types()

void init_types ( void  )

Referenced by main().

◆ is_global_namespace()

static int is_global_namespace ( const struct namespace namespace)
inlinestatic

◆ make_type()

type_t * make_type ( enum type_type  type)

Definition at line 48 of file typetree.c.

49{
50 type_t *t = alloc_type();
51 t->name = NULL;
52 t->namespace = NULL;
53 t->type_type = type;
54 t->attrs = NULL;
55 t->c_name = NULL;
56 t->signature = NULL;
57 t->qualified_name = NULL;
58 t->impl_name = NULL;
59 t->param_name = NULL;
60 t->short_name = NULL;
61 memset(&t->details, 0, sizeof(t->details));
62 t->typestring_offset = 0;
63 t->ptrdesc = 0;
64 t->ignore = (parse_only != 0);
65 t->defined = FALSE;
66 t->written = FALSE;
67 t->user_types_registered = FALSE;
68 t->tfswrite = FALSE;
69 t->checked = FALSE;
70 t->typelib_idx = -1;
71 init_location( &t->where, NULL, NULL );
72 return t;
73}
#define FALSE
Definition: types.h:117
GLdouble GLdouble t
Definition: gl.h:2047
#define memset(x, y, z)
Definition: compat.h:39
int parse_only
void init_location(struct location *copy, const struct location *begin, const struct location *end)
type_t * alloc_type(void)

Referenced by type_delegate_define(), type_new_alias(), type_new_array(), type_new_basic(), type_new_bitfield(), type_new_encapsulated_union(), type_new_enum(), type_new_function(), type_new_nonencapsulated_union(), type_new_pointer(), type_new_struct(), type_new_void(), type_parameterized_delegate_declare(), type_parameterized_delegate_define(), and type_parameterized_interface_declare().

◆ make_var()

var_t * make_var ( char name)

◆ reg_type()

◆ set_all_tfswrite()

void set_all_tfswrite ( int  val)

◆ statements_has_func()

static int statements_has_func ( const statement_list_t stmts)
inlinestatic

Definition at line 689 of file widltypes.h.

690{
691 const statement_t *stmt;
692 int has_func = 0;
693 STATEMENTS_FOR_EACH_FUNC(stmt, stmts)
694 {
695 has_func = 1;
696 break;
697 }
698 return has_func;
699}
#define STATEMENTS_FOR_EACH_FUNC(stmt, stmts)
Definition: widltypes.h:684

Referenced by write_server_stmts().

◆ type_get_type_detect_alias()

Variable Documentation

◆ context_handle_list

Definition at line 40 of file header.c.

◆ generic_handle_list

◆ user_type_list