diff options
Diffstat (limited to 'ext/win32ole/win32ole.h')
-rw-r--r-- | ext/win32ole/win32ole.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/ext/win32ole/win32ole.h b/ext/win32ole/win32ole.h index 0508c654ec..6be2d63795 100644 --- a/ext/win32ole/win32ole.h +++ b/ext/win32ole/win32ole.h @@ -82,6 +82,18 @@ #define V_UINTREF(X) V_UNION(X, puintVal) #endif +#ifdef HAVE_LONG_LONG +#define I8_2_NUM LL2NUM +#define UI8_2_NUM ULL2NUM +#define NUM2I8 NUM2LL +#define NUM2UI8 NUM2ULL +#else +#define I8_2_NUM INT2NUM +#define UI8_2_NUM UINT2NUM +#define NUM2I8 NUM2INT +#define NUM2UI8 NUM2UINT +#endif + #define OLE_ADDREF(X) (X) ? ((X)->lpVtbl->AddRef(X)) : 0 #define OLE_RELEASE(X) (X) ? ((X)->lpVtbl->Release(X)) : 0 #define OLE_FREE(x) {\ @@ -116,7 +128,12 @@ BOOL ole_initialized(); HRESULT ole_docinfo_from_type(ITypeInfo *pTypeInfo, BSTR *name, BSTR *helpstr, DWORD *helpcontext, BSTR *helpfile); VALUE ole_typedesc2val(ITypeInfo *pTypeInfo, TYPEDESC *pTypeDesc, VALUE typedetails); VALUE make_inspect(const char *class_name, VALUE detail); +void ole_val2variant(VALUE val, VARIANT *var); +void ole_val2variant2(VALUE val, VARIANT *var); +void ole_val2variant_ex(VALUE val, VARIANT *var, VARTYPE vt); VALUE ole_variant2val(VARIANT *pvar); +HRESULT ole_val_ary2variant_ary(VALUE val, VARIANT *var, VARTYPE vt); +VOID *val2variant_ptr(VALUE val, VARIANT *var, VARTYPE vt); #include "win32ole_variant_m.h" #include "win32ole_typelib.h" @@ -124,6 +141,7 @@ VALUE ole_variant2val(VARIANT *pvar); #include "win32ole_variable.h" #include "win32ole_method.h" #include "win32ole_param.h" +#include "win32ole_variant.h" #include "win32ole_error.h" #endif |