8 static void olevariable_free(
void *
ptr);
9 static size_t olevariable_size(
const void *
ptr);
11 static VALUE ole_variable_ole_type(ITypeInfo *pTypeInfo, UINT var_index);
12 static VALUE folevariable_ole_type(
VALUE self);
13 static VALUE ole_variable_ole_type_detail(ITypeInfo *pTypeInfo, UINT var_index);
14 static VALUE folevariable_ole_type_detail(
VALUE self);
15 static VALUE ole_variable_value(ITypeInfo *pTypeInfo, UINT var_index);
17 static VALUE ole_variable_visible(ITypeInfo *pTypeInfo, UINT var_index);
19 static VALUE ole_variable_kind(ITypeInfo *pTypeInfo, UINT var_index);
20 static VALUE folevariable_variable_kind(
VALUE self);
21 static VALUE ole_variable_varkind(ITypeInfo *pTypeInfo, UINT var_index);
27 {
NULL, olevariable_free, olevariable_size,},
32 olevariable_free(
void *
ptr)
40 olevariable_size(
const void *
ptr)
56 &olevariable_datatype, pvar);
85 folevariable_name(
VALUE self)
91 ole_variable_ole_type(ITypeInfo *
pTypeInfo, UINT var_index)
125 folevariable_ole_type(
VALUE self)
133 ole_variable_ole_type_detail(ITypeInfo *
pTypeInfo, UINT var_index)
159 folevariable_ole_type_detail(
VALUE self)
163 return ole_variable_ole_type_detail(pvar->
pTypeInfo, pvar->
index);
167 ole_variable_value(ITypeInfo *
pTypeInfo, UINT var_index)
175 if(pVarDesc->varkind == VAR_CONST)
203 folevariable_value(
VALUE self)
211 ole_variable_visible(ITypeInfo *
pTypeInfo, UINT var_index)
219 if (!(pVarDesc->wVarFlags & (VARFLAG_FHIDDEN |
220 VARFLAG_FRESTRICTED |
221 VARFLAG_FNONBROWSABLE))) {
249 folevariable_visible(
VALUE self)
257 ole_variable_kind(ITypeInfo *
pTypeInfo, UINT var_index)
265 switch(pVarDesc->varkind) {
266 case VAR_PERINSTANCE:
305 folevariable_variable_kind(
VALUE self)
313 ole_variable_varkind(ITypeInfo *
pTypeInfo, UINT var_index)
322 kind = RB_INT2FIX(pVarDesc->varkind);
345 folevariable_varkind(
VALUE self)
360 folevariable_inspect(
VALUE self)
363 VALUE n = folevariable_name(
self);