You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -57,12 +59,12 @@ For more information check [inner directory](src/Sharpify.Data/README.md).
57
59
58
60
## Sharpify.CommandLineInterface
59
61
60
-
`Sharpify.CommandLineInterface` is another extension package that adds a high performance, reflection free and `AOT-ready` framework for creating command line and embedded interfaces
62
+
`Sharpify.CommandLineInterface` is a standalone package that adds a high performance, reflection free and `AOT-ready` framework for creating command line and embedded interfaces
61
63
62
-
* Maintenance friendly model that depends on class that implement `Command` or `SynchronousCommand`
64
+
* Maintenance friendly model that depends on classes that implement `Command` or `SynchronousCommand`
63
65
*`Arguments` is an abstraction layer over the inputs that validate during runtime according to user needs via convenient APIs.
64
66
* Configuration using a fluent builder pattern.
65
-
* Configurable output and input pipes, enable usage outside of `Console` apps, enabling the option for embedded use in any application.
67
+
* Configurable output and input pipes, enable usage outside of `Console` apps, supporting embedded use in any application.
66
68
* Automatic and structured general and command-specific help text.
/// Returns a <see cref="ReadOnlyMemory{String}"/> of the arguments as they were before processing, but after splitting (if it was required)
44
+
/// Returns an array copy of <see cref="Source"/>
42
45
/// </summary>
43
-
/// <remarks>
44
-
/// <para>
45
-
/// If you passed a collection of strings to be used for <see cref="Arguments"/> it will contain a copy of that array, if a <see cref="string"/> was passed, it will contain a copy of the result of <see cref="Parser.ParseArguments(ReadOnlySpan{char})"/>
46
-
/// </para>
47
-
/// <para>
48
-
/// In normal use case you shouldn't need this, but in case you want to manufacture some sort of a nested command structure, you can use this to filter once more for <see cref="Arguments"/> after selectively parsing some of the arguments, in which case it is very powerful.
/// Returns a <see cref="ReadOnlySpan{String}"/> of the arguments as they were before processing, but after splitting (if it was required)
55
-
/// </summary>
56
-
/// <remarks>
57
-
/// <para>
58
-
/// If you passed a collection of strings to be used for <see cref="Arguments"/> it will contain a copy of that array, if a <see cref="string"/> was passed, it will contain a copy of the result of <see cref="Parser.ParseArguments(ReadOnlySpan{char})"/>
59
-
/// </para>
60
-
/// <para>
61
-
/// In normal use case you shouldn't need this, but in case you want to manufacture some sort of a nested command structure, you can use this to filter once more for <see cref="Arguments"/> after selectively parsing some of the arguments, in which case it is very powerful.
62
-
/// </para>
63
-
/// </remarks>
64
-
publicReadOnlySpan<string>ArgsAsSpan()=>_args;
46
+
publicstring[]SourceCopy=>Source.ToArray();
65
47
66
48
/// <summary>
67
49
/// Returns new Arguments with positional arguments forwarded by 1, so that argument that was 1 is now 0, 2 is now 1 and so on. This is non-destructive, the original arguments are not modified.
@@ -94,7 +76,7 @@ public Arguments ForwardPositionalArguments() {
94
76
95
77
// Because this is a new dictionary, if pos 1, isn't found, 0 still won't be present
96
78
// So essentially 0 was forwarded to no longer exist
0 commit comments