gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Why does StepTalk not see my class?


From: Stefan Urbanek
Subject: Re: Why does StepTalk not see my class?
Date: Thu, 16 Jun 2005 12:54:25 +0200
User-agent: Internet Messaging Program (IMP) 3.2.2

Saso,

Citát Sašo Kiselkov <address@hidden>:

> StepTalk somehow doesn't seem to see my implementation of the NSExpression
> class
> which I compiled into libgnustep-base. The library which it is linked with
> is
> correct (the one _with_ the NSExpression implementation). Do I need to
> recompile StepTalk too? Or do I need to implement some special thing inside
> StepTalk for it to understand how to communicate with NSExpression?
> 

StepTalk , by default, does not expose all available classes. There is a reason
for that. If you would like to make a class public, you just include it in your
bundle's or framework's ScriptingInfo.plist. See similar files in StepTalk
sources. That is the designated way of doing it.

GNUstep base is special case, similar to all  GNUstep libraries. As you may have
noticed, GNUstep core is set of normal libraries, not frameworks(*). Therefore
there is no ScriptingInfo. As a work-around, there are "modules" in StepTalk
for Foundation and AppKit. What you need it to add all new public gnustep-base
classes into the Modules/Foundation/ScriptingInfo.plist.

Or ... you can use hacky-way :-) as follows:

 Environment loadModule:'ObjectiveC'.
 NSExpression := Runtime classWithName:'NSExpression'.

Btw. just for couriosity, are you using stexec or StepTalk interactive shell?

Regards,

Stefan Urbanek

(*) - is there any reason why GNUstep-base is still a library, not a framework?
--
http://stefan.agentfarms.net

First they ignore you, then they laugh at you, then they fight you, then
you win.
- Mahatma Gandhi




reply via email to

[Prev in Thread] Current Thread [Next in Thread]