Use CSharpier

This commit is contained in:
Tyrrrz
2023-08-22 21:20:04 +03:00
parent a4726fcefd
commit 21b601da66
99 changed files with 975 additions and 1163 deletions

View File

@@ -29,4 +29,4 @@ public partial class Benchmarks
.AddCommand<CliFxCommand>()
.Build()
.RunAsync(Arguments, new Dictionary<string, string>());
}
}

View File

@@ -16,11 +16,9 @@ public partial class Benchmarks
[NamedArgument('b', "bool", Constraint = NumArgsConstraint.Optional, Const = true)]
public bool BoolOption { get; set; }
public void Execute()
{
}
public void Execute() { }
}
[Benchmark(Description = "Clipr")]
public void ExecuteWithClipr() => CliParser.Parse<CliprCommand>(Arguments).Execute();
}
}

View File

@@ -8,16 +8,12 @@ public partial class Benchmarks
public class CoconaCommand
{
public void Execute(
[Option("str", new []{'s'})]
string? strOption,
[Option("int", new []{'i'})]
int intOption,
[Option("bool", new []{'b'})]
bool boolOption)
{
}
[Option("str", new[] { 's' })] string? strOption,
[Option("int", new[] { 'i' })] int intOption,
[Option("bool", new[] { 'b' })] bool boolOption
) { }
}
[Benchmark(Description = "Cocona")]
public void ExecuteWithCocona() => CoconaApp.Run<CoconaCommand>(Arguments);
}
}

View File

@@ -16,9 +16,7 @@ public partial class Benchmarks
[Option('b', "bool")]
public bool BoolOption { get; set; }
public void Execute()
{
}
public void Execute() { }
}
[Benchmark(Description = "CommandLineParser")]
@@ -26,4 +24,4 @@ public partial class Benchmarks
new Parser()
.ParseArguments(Arguments, typeof(CommandLineParserCommand))
.WithParsed<CommandLineParserCommand>(c => c.Execute());
}
}

View File

@@ -21,4 +21,4 @@ public partial class Benchmarks
[Benchmark(Description = "McMaster.Extensions.CommandLineUtils")]
public int ExecuteWithMcMaster() => CommandLineApplication.Execute<McMasterCommand>(Arguments);
}
}

View File

@@ -16,11 +16,9 @@ public partial class Benchmarks
[ArgShortcut("--bool"), ArgShortcut("-b")]
public bool BoolOption { get; set; }
public void Main()
{
}
public void Main() { }
}
[Benchmark(Description = "PowerArgs")]
public void ExecuteWithPowerArgs() => Args.InvokeMain<PowerArgsCommand>(Arguments);
}
}

View File

@@ -15,18 +15,9 @@ public partial class Benchmarks
{
var command = new RootCommand
{
new Option(new[] {"--str", "-s"})
{
Argument = new Argument<string?>()
},
new Option(new[] {"--int", "-i"})
{
Argument = new Argument<int>()
},
new Option(new[] {"--bool", "-b"})
{
Argument = new Argument<bool>()
}
new Option(new[] { "--str", "-s" }) { Argument = new Argument<string?>() },
new Option(new[] { "--int", "-i" }) { Argument = new Argument<int>() },
new Option(new[] { "--bool", "-b" }) { Argument = new Argument<bool>() }
};
command.Handler = CommandHandler.Create(
@@ -40,4 +31,4 @@ public partial class Benchmarks
[Benchmark(Description = "System.CommandLine")]
public async Task<int> ExecuteWithSystemCommandLine() =>
await new SystemCommandLineCommand().ExecuteAsync(Arguments);
}
}

View File

@@ -9,11 +9,10 @@ namespace CliFx.Benchmarks;
[Orderer(SummaryOrderPolicy.FastestToSlowest)]
public partial class Benchmarks
{
private static readonly string[] Arguments = {"--str", "hello world", "-i", "13", "-b"};
private static readonly string[] Arguments = { "--str", "hello world", "-i", "13", "-b" };
public static void Main() => BenchmarkRunner.Run<Benchmarks>(
DefaultConfig
.Instance
.WithOptions(ConfigOptions.DisableOptimizationsValidator)
);
}
public static void Main() =>
BenchmarkRunner.Run<Benchmarks>(
DefaultConfig.Instance.WithOptions(ConfigOptions.DisableOptimizationsValidator)
);
}

View File

@@ -10,6 +10,7 @@
<PackageReference Include="clipr" Version="1.6.1" />
<PackageReference Include="Cocona" Version="2.2.0" />
<PackageReference Include="CommandLineParser" Version="2.9.1" />
<PackageReference Include="CSharpier.MsBuild" Version="0.25.0" PrivateAssets="all" />
<PackageReference Include="McMaster.Extensions.CommandLineUtils" Version="4.0.2" />
<PackageReference Include="PowerArgs" Version="4.0.2" />
<PackageReference Include="System.CommandLine" Version="2.0.0-beta1.20574.7" />