
wscan v1.6 documents.
Sevag Krikorian
kahlinor@yahoo.com
http://www.geocities.com/kahlinor/

version 1.6
-improved scanner

varsion 1.5
-improved scanner

version 1.4
-fixed a hang caused when only 1 label is defined.

version 1.3 fixes a minor bug.

New in version 1.2
fixed the scanner so that need for the 'wininc' macro
should be rare.

wscan is a utility for consolidating the symbols contained
in the w.hhf header file into a more compact header file
for including in your programs.

This has 2 obvious benefits:
1. vastly improving the compiling speed
of programs that use the w.hhf header file, particularily
in projects that contain many units that use w.hhf

2. your w.hhf file may vary from someone else's due to
customization, error fixing.  using wscan insures that
anybody you share the code with will have the same
equates that you use in your programs, without having
to supply the entire w.hhf file.

Defaults:
-Looks for w.hhf in the folder pointed at by 'hlainc' environment.
-Generates output file called "win_inc.hhf"

Usage:

wscan <hla source | HIDE project> [more sources] [-o][-w]

Note: options are case sensitive.

	-oxx	change the output name
	-wxx	change the windows header to scan

-wxx can either contain a full path/filename or an alternate
filename to search for in the 'hlainc' environment.

If your 'hlainc' environment points to the one in the HIDE package,
you must use this option so that wscan can use the proper header
file:

-ww32\win32.hhf

Other notes:
This program scans all the sources listed (or all the project files
if a HIDE project is used as an argument) for any 'w' namespace
symbols.  It then searches the windows header file for these symbols
and consolidates them into one smaller file (after sorting for
the correct order).

Once wscan generates the output, you need only include the file
in your source to use it instead of the w.hhf header file.

Sometimes, a declared symbol in your sources will indirectly reference
another symbol within the windows header file.  wscan uses a recursive
search to find just about all the symbols, if on some rare occasion,
a wscan is unable to detect a symbol, use the following macro to force
wscan to search for the missing label.

#macro wininc ( __winargs__[]);
#endmacro

If HLA generates missing symbol errors, simply use the macro
to declare the symbols in any declaration section of your source,
for example:

assuming TV_ITEMEX and WNDPROC are missing symbols:
wininc ( w.TV_ITEMEX, w.WNDPROC );

save and run wscan again to generate a new output file that includes
the missing symbols.
The macro accepts the HLA maximum number of arguments.

However, with v1.2+, the scanner is a lot smarter, need for the wininc
macro should be rare.

