Accessing Introspection: what's the correct signature?

Various trial signatures failed to get a valid TypeInfo returned:

[code]“Introspection.GetType(base as Object) As Introspection.TypeInfo”

“GetType(base as Object) As Introspection.TypeInfo”

"GetType(base as Object) As Xojo.Introspection.TypeInfo
[/code]

Using:

// returns Introspection.TypeInfo REALobject IntroSpection_GetType(REALobject base) { _STATIC_ REALobject (*_fp)(REALobject) = nil; if (!_fp) _fp = (REALobject(*)(REALobject))REALLoadObjectMethod(base, "GetType(base as class) As Introspection.TypeInfo"); if (_fp) return _fp(base); dlog(cc"DYNAMIC ACCESS FAILURE IN: IntroSpection_GetType"); return 0; }

What gives?

While this seems to be the correct way to get a TypeInfo:

#define _STATIC_

// returns Introspection.TypeInfo
REALobject IntroSpection_GetType(REALobject base)
{
    _STATIC_ REALobject (*_fp)(REALobject) = nil;
    if (!_fp)
        _fp = (REALobject(*)(REALobject))REALLoadFrameworkMethod("Xojo.IntroSpection.GetType(base as auto) As Xojo.Introspection.TypeInfo");
    
    dlog(cc"DYNAMIC ACCESS FAILURE IN: IntroSpection_GetType");
    return 0;
}

It is not working. I assume/presume that getting a framework method is not going to work when it is a shared method. I have tried to load the method “GetTypeInfo” but that does not take an object. I’d prefer GetTypeInfo over everything, because the plugin only wants to access method and property declarations from a user class. But I could live with the necessity of the above “IntroSpection_GetType”.

As of now, the plugin defines an event that returns a TypeInfo instance. The user simply has to call GetTypeInfo on the class and return the TypInfo.

With respect to the above failure should a bug report being filed?

There’s no way to get at this currently from a plugin.