Sharpify.CommandLineInterface
1.2.0
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package Sharpify.CommandLineInterface --version 1.2.0
NuGet\Install-Package Sharpify.CommandLineInterface -Version 1.2.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Sharpify.CommandLineInterface" Version="1.2.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Sharpify.CommandLineInterface --version 1.2.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Sharpify.CommandLineInterface, 1.2.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Sharpify.CommandLineInterface as a Cake Addin #addin nuget:?package=Sharpify.CommandLineInterface&version=1.2.0 // Install Sharpify.CommandLineInterface as a Cake Tool #tool nuget:?package=Sharpify.CommandLineInterface&version=1.2.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
CHANGELOG
Version 1.2.0
Arguments
's internal copy of the parsed args is now an array, this change was necessary to avoid special cases where the backing array was garbage collected leaving a phantom view. To get a read only copy you can use.ArgsAsSpan
or.ArgsAsMemory
according to your preference or use case.- Improved
Parser
's mapping function's stability, and also further reworked it to allow positional arguments after named ones, now positional arguments can be anywhere.- A special case that needs consideration before usage is switches, i.e boolean toggle parameters, as they look like named parameters without values. If such "switch" is followed by a regular value, it will be regarded as a named parameter and its value, as opposed to a switch and a positional argument. Keep this in mind when you decide the arrangement of input arguments, to ensure your input works as intended.
- Switches work well, either when they are followed by other named arguments, or other switches. For simplicity, it is best to leave them as the last arguments.
- Added a new
SynchronousCommand
as an alternative toCommand
, it is basically syntactic sugar that makes it so you can implement anExecute
method instead, in which you can return anint
, whenasync
is not needed, this can save multiple lines of code that just wrapint
s inValueTask.FromResult
which can be quite verbose.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0
- Sharpify (>= 1.7.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.