DEFINITION MODULE NewArgSupport; (* * ------------------------------------------------------------------------- * * :Module. NewArgSupport * :Contents. Support module to get arguments transparent from CLI or Workbench * :Author. Reiner Nix * :Address. Geranienhof 2, 5000 Köln 71 Seeberg * :Address. rbnix@pool.informatik.rwth-aachen.de * :Copyright. Public Domain * :Language. Modula-2 * :Translator. M2Amiga A-L V4.2d * :History. V1.0 08.08.92 ArgSupport * :History V1.0 03.04.93 NewArgSupport now getting cli-args by ReadArg * * ------------------------------------------------------------------------- *) (* * --- NewArgSupport ------------------------------------------------------------ * Modul zur Abfrage von Programmargumenten. Das Modul verhält sich nach außen * transparent. Es ist also egal ob beim Start über das CLI Argumente mitgegeben * wurden, oder mittels der Workbench über ToolTypes im Icon Argumente zu benutzen * sind. * * Vor Abfrage der Argumente muß mit UseArguments eine Schablone für alle * zu beachtenden Argumente angegeben werden. Diese Schablone ist nach * den Standardregeln zu bilden. Bei Aufruf über die Workbench wird die Schablone * nicht benutzt. * ------------------------------------------------------------------------------ *) CONST maxStr =128; TYPE Str =ARRAY [0..maxStr] OF CHAR; StrPtr =POINTER TO Str; StrArray =ARRAY [0..maxStr] OF StrPtr; StrArrayPtr =POINTER TO StrArray; PROCEDURE UseArguments ( Template :ARRAY OF CHAR); PROCEDURE ArgInt ( Keyword :ARRAY OF CHAR; Default :INTEGER) :INTEGER; PROCEDURE ArgString ( Keyword, Default :ARRAY OF CHAR; VAR Value :ARRAY OF CHAR); PROCEDURE ArgBoolean ( Keyword :ARRAY OF CHAR; Default :BOOLEAN) :BOOLEAN; PROCEDURE ArgMultiple ( Keyword :ARRAY OF CHAR) :StrArrayPtr; END NewArgSupport.