Initial commit
This commit is contained in:
parent
6b9e6f3480
commit
cea7bb8db9
36
src/argument_parser.ads
Normal file
36
src/argument_parser.ads
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
package Argument_Parser is
|
||||
|
||||
type Option is interface;
|
||||
|
||||
function Parse (I : string) return Option is abstract;
|
||||
|
||||
type Argument_Parser is tagged private;
|
||||
|
||||
procedure Add_Positional (
|
||||
Parser : in out Argument_Parser;
|
||||
Input_Type : Option'Class;
|
||||
Key : string;
|
||||
Collect_Further_Inputs : Boolean := False);
|
||||
|
||||
procedure Add_Boolean_Option (
|
||||
Parser : in out Argument_Parser;
|
||||
Short_String : string;
|
||||
Long_String : string)
|
||||
|
||||
procedure Add_Count_Option (
|
||||
Parser : in out Argument_Parser;
|
||||
Short_String : string;
|
||||
Long_String : string;
|
||||
Start_Count : Count := 0);
|
||||
|
||||
procedure Add_Option (
|
||||
Parser : in out Argument_Parser;
|
||||
Input_Type : Option'Class;
|
||||
Short_String : string;
|
||||
Long_String : string);
|
||||
|
||||
private
|
||||
|
||||
type Argument_Parser is tagged null record;
|
||||
|
||||
end Argument_Parser;
|
||||
Loading…
Reference in New Issue
Block a user