gm2-libs/OptLib
DEFINITION MODULE OptLib ;
FROM SYSTEM IMPORT ADDRESS ;
FROM DynamicStrings IMPORT String ;
TYPE
Option ;
(*
InitOption - constructor for Option.
*)
PROCEDURE InitOption (argc: INTEGER; argv: ADDRESS) : Option ;
(*
KillOption - deconstructor for Option.
*)
PROCEDURE KillOption (o: Option) : Option ;
(*
Dup - duplicate the option array inside, o.
Notice that this does not duplicate all the contents
(strings) of argv.
Shallow copy of the top level indices.
*)
PROCEDURE Dup (o: Option) : Option ;
(*
Slice - return a new option which has elements [low:high] from the
options, o.
*)
PROCEDURE Slice (o: Option; low, high: INTEGER) : Option ;
(*
IndexStrCmp - returns the index in the argv array which matches
string, s. -1 is returned if the string is not found.
*)
PROCEDURE IndexStrCmp (o: Option; s: String) : INTEGER ;
(*
IndexStrNCmp - returns the index in the argv array where the first
characters are matched by string, s.
-1 is returned if the string is not found.
*)
PROCEDURE IndexStrNCmp (o: Option; s: String) : INTEGER ;
(*
ConCat - returns the concatenation of a and b.
*)
PROCEDURE ConCat (a, b: Option) : Option ;
(*
GetArgv - return the argv component of option.
*)
PROCEDURE GetArgv (o: Option) : ADDRESS ;
(*
GetArgc - return the argc component of option.
*)
PROCEDURE GetArgc (o: Option) : INTEGER ;
END OptLib.