Objective-C and runtime type inspection
Thu Aug 17 20:37:08 CEST 2006
Have you used Objective-C lately Ryan? There are plenty of structures
various other non-object data types used in common method calls. Joel
definitely knows at least something about what he's talking about.
NSPoint, NSError**, etc.
However for the majority of cases, you can determine the arity and
argument types of an Objective-C selector from the runtime. You'll
still likely have problems with varargs and paired arguments, e.g.
+[NSArray arrayWithObjects:...] and +[NSArray
arrayWithObjects:count:]. In PyObjC we do use a header parser, but
only to provide metadata for special cases.
On 8/17/06, Ryan Rawson <> wrote:
> what structures? There _are_ no structures to inspect... All you have
> is an opaque object reference that you can then send messages to.
> Objective C is more like smalltalk than C++/Java/etc. You cannot mess
> with the fields of an object. They are 100% opaque (technically they
> are C structs, but you are asking for trouble to inspect them).
> Also, why doesn't your email thread up with the other message?
> On 8/17/06, Joel Reymont <> wrote:
> > On Aug 17, 2006, at 6:01 PM, Ryan Rawson wrote:
> > > In fact, why bother with run-time type inspection? Just send a
> > > message to an object and be prepared to handle the exception...
> > To perform translations of structures and the like, I suppose.
> > --
> > http://wagerlabs.com/
More information about the erlang-questions