[jawsscripts] Re: New import compiler directive

  • From: Doug Lee <doug.lee@xxxxxxxxxxxxxxxx>
  • To: jawsscripts@xxxxxxxxxxxxx
  • Date: Wed, 14 Mar 2012 09:09:54 -0400

I believe the usage and function of the Import directive was explained
in subsequent messages to this one. Someone raised the question of
backward compatibility though.

Import will probably not work before JAWS 13. There is an undocumented
alternative though, one I found years ago but that seems not to have
started working until JAWS 11:

prototype string function f1(int a, string b)

can be used in a jss file to declare a function that is not declared
in a jsd file in scope.  Practically, this means you can handle a
compile error on a function call by copying its first line from its
originating jss file into your jss file and putting the word
"prototype" in front of the new line.

On Wed, Mar 14, 2012 at 12:13:09AM -0300, Andrew Hart wrote:
Hi folks,

I stumbled across the following line of code in QuickSet.jsd recently,
and a rather terse explanation buried in FileIO.jss.  However, it seems
to be undocumented in the FSDN.  Grepping the all users settings\enu
directory, There are a pile of scripts that use the Import directive.

I can't say I truely grok it, but it appears that the Import command is
used for getting the Script Manager to load up function declarations
(from jsd files) that are deeply nested in the script binary load scope.
 I always thought that the Script Manager automatically loaded the jsd
files associated with binaries referenced using the Use directive.  I am
assuming that Import is needed because the compiler isn't actually
clever enough to recursively scan through "Used" jsb files to find all
the associated jsd files necessary to provide all the required function
declarations, in case the top level script file calls a function buried
2 or more levels down in the scope (excluding functions in default.jss
whose documentation one would expect the Script Manager to always have
on hand).

Is anyone else aware of this or have I just been living on another
planet for the last few years?

Cheers,
Andrew.


__________???

View the list's information and change your settings at 
//www.freelists.org/list/jawsscripts

-- 
Doug Lee, Senior Accessibility Programmer
SSB BART Group - Accessibility-on-Demand
mailto:doug.lee@xxxxxxxxxxxxxxxx  http://www.ssbbartgroup.com
"While they were saying among themselves it cannot be done,
it was done." --Helen Keller
__________�

View the list's information and change your settings at 
//www.freelists.org/list/jawsscripts

Other related posts: