diff options
Diffstat (limited to 'lib/VNLib.Plugins.Extensions.Loading/src/Secrets/SecretResult.cs')
-rw-r--r-- | lib/VNLib.Plugins.Extensions.Loading/src/Secrets/SecretResult.cs | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/VNLib.Plugins.Extensions.Loading/src/Secrets/SecretResult.cs b/lib/VNLib.Plugins.Extensions.Loading/src/Secrets/SecretResult.cs index f2cbd28..c1e6b3d 100644 --- a/lib/VNLib.Plugins.Extensions.Loading/src/Secrets/SecretResult.cs +++ b/lib/VNLib.Plugins.Extensions.Loading/src/Secrets/SecretResult.cs @@ -42,7 +42,14 @@ namespace VNLib.Plugins.Extensions.Loading public ReadOnlySpan<char> Result => _secretChars; - internal SecretResult(ReadOnlySpan<char> value) => _secretChars = value.ToArray(); + internal SecretResult(ReadOnlySpan<char> value) : this(value.ToArray()) + { } + + private SecretResult(char[] secretChars) + { + _secretChars = secretChars; + } + ///<inheritdoc/> protected override void Free() @@ -56,5 +63,7 @@ namespace VNLib.Plugins.Extensions.Loading MemoryUtil.UnsafeZeroMemory<char>(result); return res; } + + internal static SecretResult ToSecret(char[] result) => new(result); } } |