Re: Shrouding
- Posted by "Daniel Kluss" <codepilot at netzero.net> Nov 10, 2003
- 611 views
Thanks for the help, there should be a shrouded EUEU(euphoria scripting for euphoria) on the user contrib spot as soon as it works its way through the system. Daniel Kluss ----- Original Message ----- From: "Pete Lomax" <petelomax at blueyonder.co.uk> To: <EUforum at topica.com> Subject: Re: Shrouding > > > On Sun, 9 Nov 2003 19:48:56 -0800, Daniel Kluss > <codepilot at netzero.net> wrote: > > >Ive had been reg euphoria since like december of 2000, but I've never shrouded anything before. > >How do you shoud source and have it still useable by include? > > > I've been doing quite a bit of that this year > > If it is a fairly simple source without any include statements, then > it is very easy. Just include the output file as normal. > > If there are some include statements, then only the global routines > and constants defined in the main file remain global after shrouding, > so you may have to write a small wrapper at the toplevel, eg, I have: > > global procedure setCommissionCode(sequence Code) > SetCommissionCode(Code) -- see register.ew > end procedure > > because SetCommissionCode (with a capital S) from the included file is > otherwise not callable after shrouding. > > Conversely, global variables remain global no matter where they are > defined, so if you want to hide them, you have to make them local to a > sub-include file and in that file write global set and get functions > (which automatically cease to be global after shrouding), eg I have: > > atom A4Mapping > global procedure SetA4Mapping(atom a4m) > A4Mapping=a4m > end procedure > global function GetA4Mapping() > return A4Mapping > end function > > where normally I might just have global atom A4Mapping. You only need > to do this if it is important that A4Mapping is not visible externally > once the source has been shrouded. > > If your shrouded source uses win32lib or similar, then it can get very > messy. I've managed it, but with hindsight I could have made my life > much easier by finding some way, any way, not to do it . I can help > out if you need me to, just ask. > > Pete > http://palacebuilders.pwp.blueyonder.co.uk/euphoria.html > > > > TOPICA - Start your own email discussion group. FREE! > >