[futurebasic] Re: [FB] DCODs & calling functions

Message: < previous - next > : Reply : Subscribe : Cleanse
Home   : May 1999 : Group Archive : Group : All Groups

From: "Pete" <furbies@...>
Date: Wed, 05 May 1999 14:40:46 +1000
> Pete wrote:
>> Hi all....
>> Can I pass the address of a FN which lives in the app calling the DCOD and
>> have the DCOD use the FN as if it was just another FN ??
>> (snip)
>>         CALL addressOfPrintFN& (textH&)
>> address of print FN is obtained by doing:
>>         addressOfPrintFN& = @FN myPrintFN
>> in the app at startup time
> You can use the value returned by @FN, but not the way you've shown.  Instead
> of using CALL, you should use the FN USING statement.
> CALL is suitable if you're referring to the address of a label that's in front
> of an ENTERPROC statement (such as would be returned by the LINE function).
> ENTERPROC procedures and LOCAL FN's pass parameters in different ways, and you
> need to call them in different ways.
> - Rick

Just to make sure I'm clear on this...

An app builds a list of FNs inside it's self using address& = @FN FNname

The app then calls a DCOD. The DCOD is in an external rsrc file.

The DCOD wants to use a FN in the callling app so it does a
DEF FN FNname(a, b, c) USING address&

then the DCOD calls the FN it wants with:

FN FNname(a, b, c)

so Rick, is this about right ??