2 using CodeGen.generators;
 
    9         public Options(
string lang, 
string file, 
int? spaces, 
bool stdout)
 
   17         [Option(
'l', 
"lang", Default = Program.DefaultLang, HelpText = 
"Languege of output")]
 
   18         public string Lang { 
get; }
 
   24         [Option(
'f', 
"file", Default = 
"", HelpText = 
"File or url from which to read data")]
 
   25         public string File { 
get; }
 
   27         [Option(
's', 
"spaces", Default = -1, HelpText = 
"Spaces offset (if not set or negative - using tabs)")]
 
   28         public int? Spaces { 
get; }
 
   31         [Option(
'o', 
"stdout", Default = 
true, HelpText = 
"")]
 
   32         public bool Stdout { 
get; }
 
   34         public override string ToString()
 
   36             return $
"{{ -l=\"{Lang}\" -f=\"{File}\" -s={Spaces} {(Stdout ? "-o
" : "")}}}";
 
   40     internal static class Program
 
   42         public const string DefaultLang = 
"vb";
 
   44         public static readonly 
Package DefaultPkg = GeneratorConf.ExamplePkg;
 
   46         public static Options Opts;
 
   48         private static void Main(
string[] args)
 
   50             Parser.Default.ParseArguments<Options>(args)
 
   51                 .WithParsed(opts => Opts = opts)
 
   52                 .WithNotParsed(Console.WriteLine);
 
   58                 var langName = Opts != null ? Opts.Lang : DefaultLang;
 
   59                 ExecuteConf.Execute(langName, Opts?.File, Opts != null && Opts.Stdout);
 
The structure that describes package. Contains classes and subpackages