summaryrefslogtreecommitdiff
path: root/ext/win32ole/win32ole.h
diff options
context:
space:
mode:
authorsuke <suke@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-08-13 12:46:23 +0000
committersuke <suke@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-08-13 12:46:23 +0000
commit51b4ccd6187c62dfb4f2b493951bc830faf1cff4 (patch)
treefe95aaf4d2b7a83bf6942221d3908428db05f584 /ext/win32ole/win32ole.h
parent02c86ce1eef70ddc528c47fd0c0f133826a8804e (diff)
* ext/win32ole/win32ole.c: seperate WIN32OLE_VARIANT src from
win32ole.c. * ext/win32ole/win32ole.h: ditto. * ext/win32ole/win32ole_variant.c: ditto. * ext/win32ole/win32ole_variant.c: ditto. * ext/win32ole/depend: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/win32ole/win32ole.h')
-rw-r--r--ext/win32ole/win32ole.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/ext/win32ole/win32ole.h b/ext/win32ole/win32ole.h
index 0508c65..6be2d63 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