[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: objc-runtime - methodLists not in Class
From: |
Tobias |
Subject: |
Re: objc-runtime - methodLists not in Class |
Date: |
Mon, 12 May 2003 17:04:02 +0200 |
User-agent: |
KMail/1.5.1 |
> >>do we have something similar, or do i have to create a function to do
> >> this?
>
> That depends on who you mean by "we" :-)
we is always me + rest of world - some others ;)
i meant fsf, because gnustep is part of the gnu project
> The ObjC Runtime is part of the compiler libraries. But, yes, the FSF
> GCC's ObjC Runtime has a corresponding stucture member:
> struct objc_method_list* methods;
> found in:
> objc/objc.h
> see:
> http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libobjc/objc/objc.h?rev=1.3&conte
>nt-type=text/x-cvsweb-markup it is a linked list rather than an array of
> pointers.
thx, i failed to look at the typedef of objc_method_list.
>
> Unfortunately the NeXT/Apple and FSF ObjC Runtimes have multiple subtile
> differences. gnustep/base/objc-gnu2next.h attempts to do some runtime
> mappings but does the wrong thing for some mappings, which just aren't
> as simple as redefine. (see: class_get_class_method/class_getClassMethod)
i thought (because of the name) that it was only one-way. but looking at the
header, i see that it is bi-directional ;)
...but unfortunaly does not seem very complete from next/apple to gnu
> That's why gnustep has GSObjCRuntime.h/.m, which can abstract the
> runtime API much better.
which i unfortunately will not be able to use (at least in the short term).
> Maybe you could explain a bit more what it is you want to do and I could
> see if I could post an RFA for the bits I've got, if the help solve your
> problem, because I'm still to far from posting an RFA for all the tweaks
> I'm fiddeling with.
i am porting rubycocoa [1] trying to rewrite as less as possible, so that i
can eventually get my patches in the official tree.
this goal prohibits me from using GSObjCRuntime (in the short term ;).
[1] rubycocoa.sf.net it is gpl ;)
thx again, dave.
~ibotty