aboutsummaryrefslogtreecommitdiff
path: root/lib/VNLib.Plugins.Extensions.Loading/src/Secrets/SecretResult.cs
diff options
context:
space:
mode:
Diffstat (limited to 'lib/VNLib.Plugins.Extensions.Loading/src/Secrets/SecretResult.cs')
-rw-r--r--lib/VNLib.Plugins.Extensions.Loading/src/Secrets/SecretResult.cs11
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);
}
}