I don't have time to test this right now, but I think the answer might be
that I need to add a line to
main\trunk\interpreter\runtime\nativemethods.h reading

   INTERNAL_METHOD(rexx_clear_queue)

I will try to get time to try it out tonight.

Jon


2008/8/17 Sahananda (Jon) Wolfers <[EMAIL PROTECTED]>

> Hi,
>
> I am in trouble again.  I added Rick's code (as below) to
> main\trunk\interpreter\classes\RexxQueueMethods.cpp at the end where it
> seems to belong and added the call to it to the rexxQueue methods in
> main\trunk\interpreter\RexxClasses\streamClasses.orx.
>
> I've updated the SVN branch at trunk.  When I try to build I get the
> following error:
>
> ...
> creating the system specific methods ...
> Adding setlike methods to RELATION
> creating .!server and defining its instance methods
>    496 *-* ::METHOD empty           EXTERNAL 'LIBRARY REXX
> rexx_clear_queue'
>    134 *-* call 'StreamClasses.orx'
> Error 90 running D:\orxSVN\main\trunk\Win32Dbg\StreamClasses.orx line 496:
> External name not found
> Error 90.998:  Unable to find external method "rexx_clear_queue"
> Logic error: Error building kernel image.  Image not saved.
>
> I cannot see any obvious clues to what could be wrong, except possibly that
> Rick's C++ code calls RexxMethod0 where the other calls are all to
> RexxMethod1
>
> This isn't urgent enough to disturb Rick's vacation, but if anyone else can
> see anything obviously wrong in what I've done, please let me know.
>
> thanks, Jon
>
> 2008/8/11 Rick McGuire <[EMAIL PROTECTED]>
>
>> John,
>>
>>
>> Note that in 4.0, the clear method (probably should be "empty" to be
>> consistent with the other collection classes) would be best
>> implemented by C code using the RexxClearQueue() API I just added.
>> The file in question is interpreter/classes/RexxQueueMethods.cpp.  The
>> code would be basically this:
>>
>>
>>
>>
>> /********************************************************************************************/
>> /* Rexx_clear_queue
>>                    */
>>
>> /********************************************************************************************/
>> RexxMethod0(int, rexx_clear_queue)
>> {
>>
>>                                      /* get the queue name
>>  */
>>   RexxObjectPtr queue_name = context->GetObjectVariable("NAMED_QUEUE");
>>                                          /* pull a line
>>        */
>>   return RexxClearQueue(context->ObjectToStringValue(queue_name));
>> }
>>
>> You should be able to add that at the end of the RexxQueueMethods.cpp
>> file, then in the RexxQueue ooRexx code, you reference that using:
>>
>> ::METHOD empty         EXTERNAL 'LIBRARY REXX rexx_clear_queue'
>>
>> Rick
>>
>>
>> On Mon, Aug 11, 2008 at 1:58 AM, Sahananda (Jon) Wolfers
>> <[EMAIL PROTECTED]> wrote:
>> > I could take on the rfe's for the RexxQueue class.  Although the base
>> > methods are written in C++ it looks like I could add MareArray and Clear
>> in
>> > Rexx in STreamClasses.orx.
>> >
>> > Only drawback is that I don't know what a Rexx External Queue is.
>> >
>> > I understand Queues (ie: the Queue Collection class) and from my VM days
>> I
>> > understand 'The Stack' which I use in oorexx by piping output to RxQueue
>> and
>> > retrieve using parse pull.
>> >
>> > I've looked in the manuals and googled a bit.  Can anyone give me a
>> short
>> > easy code sample using the RexxQueue class please.
>> >
>> > thanks,
>> >
>> > Jon
>> >
>> >
>> -------------------------------------------------------------------------
>> > This SF.Net email is sponsored by the Moblin Your Move Developer's
>> challenge
>> > Build the coolest Linux based applications with Moblin SDK & win great
>> > prizes
>> > Grand prize is a trip for two to an Open Source event anywhere in the
>> world
>> > http://moblin-contest.org/redirect.php?banner_id=100&url=/
>> > _______________________________________________
>> > Oorexx-devel mailing list
>> > Oorexx-devel@lists.sourceforge.net
>> > https://lists.sourceforge.net/lists/listinfo/oorexx-devel
>> >
>> >
>>
>> -------------------------------------------------------------------------
>> This SF.Net email is sponsored by the Moblin Your Move Developer's
>> challenge
>> Build the coolest Linux based applications with Moblin SDK & win great
>> prizes
>> Grand prize is a trip for two to an Open Source event anywhere in the
>> world
>> http://moblin-contest.org/redirect.php?banner_id=100&url=/
>> _______________________________________________
>> Oorexx-devel mailing list
>> Oorexx-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/oorexx-devel
>>
>
>
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to