Sha256: 8400d1fd96044c6453401bf97f6c9e5d88715e04be1d141b9cc92ec55c433998

Contents?: true

Size: 1.8 KB

Versions: 1

Compression:

Stored size: 1.8 KB

Contents

o:$YARD::CodeObjects::MethodObject:
@name:
typelibs:@docstringIC:YARD::Docstring"%Returns array of type libraries.
:@objectu:YARD::StubProxyWIN32OLE_TYPE.typelibs:
@summary0:
@tags[o:YARD::Tags::OverloadTag
;
u;WIN32OLE_TYPE.typelibs;;;IC;	"
;
u;WIN32OLE_TYPE.typelibs;0;
[:	@all":@ref_tags[:@tag_name"
overload:@parameters[:@types0:@signature"
typelibs:
@text0;";Returns array of type libraries.



@overload typelibs;[:@docstring_extra0:@visibility:public:@files[["ext/win32ole/win32ole.c0;
[;[:
@path"WIN32OLE_TYPE.typelibs:@source_type:c:@source"�/*
 *  call-seq:
 *     WIN32OLE_TYPE.typelibs
 * 
 *  Returns array of type libraries.
 *
 */
static VALUE
foletype_s_typelibs(self)
    VALUE self;
{
    HKEY htypelib, hclsid;
    double fversion;
    DWORD i, j;
    LONG err;
    VALUE clsid;
    VALUE ver;
    VALUE v = Qnil;
    VALUE typelibs = rb_ary_new();

    err = reg_open_key(HKEY_CLASSES_ROOT, "TypeLib", &htypelib);
    if(err != ERROR_SUCCESS) {
        return typelibs;
    }
    for(i = 0; ; i++) {
        clsid = reg_enum_key(htypelib, i);
        if (clsid == Qnil)
            break;
        err = reg_open_vkey(htypelib, clsid, &hclsid);
        if (err != ERROR_SUCCESS)
            continue;
        fversion = 0;
        for(j = 0; ; j++) {
            ver = reg_enum_key(hclsid, j);
            if (ver == Qnil)
                break;
            if (fversion > atof(StringValuePtr(ver)))
                continue;
            fversion = atof(StringValuePtr(ver));
            if ( (v = reg_get_val(hclsid, StringValuePtr(ver))) != Qnil ) {
                rb_ary_push(typelibs, v);
            }
        }
        RegCloseKey(hclsid);
    }
    RegCloseKey(htypelib);
    return typelibs;
}:@namespaceu;WIN32OLE_TYPE:@scope:
class:@current_file_has_commentsF

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
pry-0.6.9pre1-i386-mingw32 lib/pry/stdlib_docs18/objects/WIN32OLE_TYPE/typelibs_c.dat