diff --git a/Directory.Packages.props b/Directory.Packages.props
index a5fdcd6..9936d03 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -3,7 +3,7 @@
true
-
+
diff --git a/src/Serde.CmdLine/CmdLine.cs b/src/Serde.CmdLine/CmdLine.cs
index 4521c32..8114c43 100644
--- a/src/Serde.CmdLine/CmdLine.cs
+++ b/src/Serde.CmdLine/CmdLine.cs
@@ -20,7 +20,7 @@ public static Result> ParseRaw(
var deserializer = new Deserializer(args, handleHelp);
try
{
- var cmd = T.DeserializeInstance.Deserialize(deserializer);
+ var cmd = T.Instance.Deserialize(deserializer);
if (handleHelp && deserializer.HelpInfos.Count > 0)
{
return new Result>.Err(deserializer.HelpInfos);
@@ -59,7 +59,7 @@ public static bool TryParse(string[] args, IAnsiConsole console, out T cmd)
cmd = value;
return true;
case Result>.Err(var helpInfos):
- var rootInfo = SerdeInfoProvider.GetInfo();
+ var rootInfo = SerdeInfoProvider.GetDeserializeInfo();
var lastInfo = helpInfos.Last();
console.WriteLine(CmdLine.GetHelpText(rootInfo, lastInfo, includeHelp: true));
cmd = default!;
@@ -71,7 +71,7 @@ public static bool TryParse(string[] args, IAnsiConsole console, out T cmd)
catch (ArgumentSyntaxException ex)
{
console.WriteLine("error: " + ex.Message);
- var rootInfo = SerdeInfoProvider.GetInfo();
+ var rootInfo = SerdeInfoProvider.GetDeserializeInfo();
console.WriteLine(GetHelpText(rootInfo));
cmd = default!;
return false;
diff --git a/src/Serde.CmdLine/Deserializer.DeserializeType.cs b/src/Serde.CmdLine/Deserializer.DeserializeType.cs
index 7ae0c72..8cff03b 100644
--- a/src/Serde.CmdLine/Deserializer.DeserializeType.cs
+++ b/src/Serde.CmdLine/Deserializer.DeserializeType.cs
@@ -1,36 +1,38 @@
namespace Serde.CmdLine;
-internal sealed partial class Deserializer : IDeserializeType
+internal sealed partial class Deserializer : ITypeDeserializer
{
- V IDeserializeType.ReadValue(int index, D deserialize) => deserialize.Deserialize(this);
+ int? ITypeDeserializer.SizeOpt => null;
- bool IDeserializeType.ReadBool(int index) => ReadBool();
+ T ITypeDeserializer.ReadValue(ISerdeInfo info, int index, IDeserialize deserialize) => deserialize.Deserialize(this);
- byte IDeserializeType.ReadByte(int index) => ReadByte();
+ bool ITypeDeserializer.ReadBool(ISerdeInfo info, int index) => ReadBool();
- char IDeserializeType.ReadChar(int index) => ReadChar();
+ byte ITypeDeserializer.ReadU8(ISerdeInfo info, int index) => ReadU8();
- decimal IDeserializeType.ReadDecimal(int index) => ReadDecimal();
+ char ITypeDeserializer.ReadChar(ISerdeInfo info, int index) => ReadChar();
- double IDeserializeType.ReadDouble(int index) => ReadDouble();
+ decimal ITypeDeserializer.ReadDecimal(ISerdeInfo info, int index) => ReadDecimal();
- float IDeserializeType.ReadFloat(int index) => ReadFloat();
+ double ITypeDeserializer.ReadF64(ISerdeInfo info, int index) => ReadF64();
- short IDeserializeType.ReadI16(int index) => ReadI16();
+ float ITypeDeserializer.ReadF32(ISerdeInfo info, int index) => ReadF32();
- int IDeserializeType.ReadI32(int index) => ReadI32();
+ short ITypeDeserializer.ReadI16(ISerdeInfo info, int index) => ReadI16();
- long IDeserializeType.ReadI64(int index) => ReadI64();
+ int ITypeDeserializer.ReadI32(ISerdeInfo info, int index) => ReadI32();
- sbyte IDeserializeType.ReadSByte(int index) => ReadSByte();
+ long ITypeDeserializer.ReadI64(ISerdeInfo info, int index) => ReadI64();
- string IDeserializeType.ReadString(int index) => ReadString();
+ sbyte ITypeDeserializer.ReadI8(ISerdeInfo info, int index) => ReadI8();
- ushort IDeserializeType.ReadU16(int index) => ReadU16();
+ string ITypeDeserializer.ReadString(ISerdeInfo info, int index) => ReadString();
- uint IDeserializeType.ReadU32(int index) => ReadU32();
+ ushort ITypeDeserializer.ReadU16(ISerdeInfo info, int index) => ReadU16();
- ulong IDeserializeType.ReadU64(int index) => ReadU64();
+ uint ITypeDeserializer.ReadU32(ISerdeInfo info, int index) => ReadU32();
- void IDeserializeType.SkipValue() => _argIndex++;
+ ulong ITypeDeserializer.ReadU64(ISerdeInfo info, int index) => ReadU64();
+
+ void ITypeDeserializer.SkipValue(ISerdeInfo info, int index) => _argIndex++;
}
\ No newline at end of file
diff --git a/src/Serde.CmdLine/Deserializer.cs b/src/Serde.CmdLine/Deserializer.cs
index 2d74f67..53b3cbd 100644
--- a/src/Serde.CmdLine/Deserializer.cs
+++ b/src/Serde.CmdLine/Deserializer.cs
@@ -13,12 +13,12 @@ internal sealed partial class Deserializer(string[] args, bool handleHelp) : IDe
public IReadOnlyList HelpInfos => _helpInfos;
- int IDeserializeType.TryReadIndex(ISerdeInfo serdeInfo, out string? errorName)
+ int ITypeDeserializer.TryReadIndex(ISerdeInfo serdeInfo, out string? errorName)
{
if (_argIndex == args.Length)
{
errorName = null;
- return IDeserializeType.EndOfType;
+ return ITypeDeserializer.EndOfType;
}
var arg = args[_argIndex];
@@ -29,7 +29,7 @@ int IDeserializeType.TryReadIndex(ISerdeInfo serdeInfo, out string? errorName)
if (_argIndex == args.Length)
{
errorName = null;
- return IDeserializeType.EndOfType;
+ return ITypeDeserializer.EndOfType;
}
arg = args[_argIndex];
}
@@ -113,7 +113,7 @@ int IDeserializeType.TryReadIndex(ISerdeInfo serdeInfo, out string? errorName)
else
{
errorName = arg;
- return IDeserializeType.IndexNotFound;
+ return ITypeDeserializer.IndexNotFound;
}
}
@@ -132,20 +132,17 @@ public bool ReadBool()
public string ReadString() => args[_argIndex++];
- public T ReadNullableRef(D d)
+ public T ReadNullableRef(IDeserialize d)
where T : class
- where D : IDeserialize
{
// Treat all nullable values as just being optional. Since we got here we must have a value
// in hand.
return d.Deserialize(this);
}
- public T ReadAny(IDeserializeVisitor v) where T : class => throw new NotImplementedException();
-
public char ReadChar() => throw new NotImplementedException();
- public byte ReadByte() => throw new NotImplementedException();
+ public byte ReadU8() => throw new NotImplementedException();
public ushort ReadU16() => throw new NotImplementedException();
@@ -153,7 +150,7 @@ public T ReadNullableRef(D d)
public ulong ReadU64() => throw new NotImplementedException();
- public sbyte ReadSByte() => throw new NotImplementedException();
+ public sbyte ReadI8() => throw new NotImplementedException();
public short ReadI16() => throw new NotImplementedException();
@@ -161,18 +158,13 @@ public T ReadNullableRef(D d)
public long ReadI64() => throw new NotImplementedException();
- public float ReadFloat() => throw new NotImplementedException();
+ public float ReadF32() => throw new NotImplementedException();
- public double ReadDouble() => throw new NotImplementedException();
+ public double ReadF64() => throw new NotImplementedException();
public decimal ReadDecimal() => throw new NotImplementedException();
- public IDeserializeCollection ReadCollection(ISerdeInfo typeInfo)
- {
- throw new NotImplementedException();
- }
-
- public IDeserializeType ReadType(ISerdeInfo typeInfo) => this;
+ public ITypeDeserializer ReadType(ISerdeInfo typeInfo) => this;
public void Dispose() { }
}
\ No newline at end of file
diff --git a/src/dnvm/Channel.cs b/src/dnvm/Channel.cs
index 4d7de48..b37df35 100644
--- a/src/dnvm/Channel.cs
+++ b/src/dnvm/Channel.cs
@@ -61,16 +61,20 @@ partial record Channel : ISerializeProvider
public sealed override string ToString() => GetDisplayName();
public string GetLowerName() => GetDisplayName().ToLowerInvariant();
- static ISerdeInfo ISerdeInfoProvider.SerdeInfo { get; } = SerdeInfo.MakePrimitive(nameof(Channel));
- static ISerialize ISerializeProvider.SerializeInstance => Serialize.Instance;
+ static ISerialize ISerializeProvider.Instance => Serialize.Instance;
private sealed class Serialize : ISerialize
{
public static readonly Serialize Instance = new();
private Serialize() { }
+ ///
+ /// Serialize as a string.
+ ///
+ ISerdeInfo ISerdeInfoProvider.SerdeInfo => StringProxy.SerdeInfo;
+
void ISerialize.Serialize(Channel channel, ISerializer serializer)
- => serializer.SerializeString(channel.GetLowerName());
+ => serializer.WriteString(channel.GetLowerName());
}
partial record VersionedMajorMinor
@@ -101,7 +105,7 @@ partial record Preview : Channel
partial record Channel : IDeserializeProvider
{
- static IDeserialize IDeserializeProvider.DeserializeInstance => DeserializeProxy.Instance;
+ static IDeserialize IDeserializeProvider.Instance => DeserializeProxy.Instance;
public static Channel FromString(string str)
{
@@ -137,6 +141,12 @@ public static Channel FromString(string str)
private sealed class DeserializeProxy : IDeserialize
{
public static readonly DeserializeProxy Instance = new();
+
+ ///
+ /// Deserialize as a string.
+ ///
+ ISerdeInfo ISerdeInfoProvider.SerdeInfo => StringProxy.SerdeInfo;
+
public Channel Deserialize(IDeserializer deserializer)
=> FromString(StringProxy.Instance.Deserialize(deserializer));
}
diff --git a/src/dnvm/CommandLineArguments.cs b/src/dnvm/CommandLineArguments.cs
index 1dc9158..9177829 100644
--- a/src/dnvm/CommandLineArguments.cs
+++ b/src/dnvm/CommandLineArguments.cs
@@ -40,7 +40,7 @@ public sealed partial record InstallCommand : DnvmSubCommand
public bool? Force { get; init; } = null;
[CommandOption("-s|--sdk-dir", Description = "Install the SDK into a separate directory with the given name.")]
- [SerdeMemberOptions(DeserializeProxy = typeof(NullableRefProxy.Deserialize))] // Treat as string
+ [SerdeMemberOptions(DeserializeProxy = typeof(NullableRefProxy.De))] // Treat as string
public SdkDirName? SdkDir { get; init; } = null;
[CommandOption("-v|--verbose", Description = "Print debugging messages to the console.")]
@@ -159,7 +159,7 @@ public sealed partial record UninstallCommand : DnvmSubCommand
public required SemVersion SdkVersion { get; init; }
[CommandOption("-s|--sdk-dir", Description = "Uninstall the SDK from the given directory.")]
- [SerdeMemberOptions(DeserializeProxy = typeof(NullableRefProxy.Deserialize))] // Treat as string
+ [SerdeMemberOptions(DeserializeProxy = typeof(NullableRefProxy.De))] // Treat as string
public SdkDirName? SdkDir { get; init; } = null;
}
@@ -185,8 +185,8 @@ public sealed partial record RestoreCommand : DnvmSubCommand
///
private sealed class CaseInsensitiveChannel : IDeserializeProvider, IDeserialize
{
- public static ISerdeInfo SerdeInfo => Serde.SerdeInfo.MakePrimitive(nameof(Channel));
- static IDeserialize IDeserializeProvider.DeserializeInstance { get; } = new CaseInsensitiveChannel();
+ public ISerdeInfo SerdeInfo => StringProxy.SerdeInfo;
+ static IDeserialize IDeserializeProvider.Instance { get; } = new CaseInsensitiveChannel();
private CaseInsensitiveChannel() { }
public Channel Deserialize(IDeserializer deserializer)
@@ -326,7 +326,7 @@ public sealed record class CommandLineArguments(CommandArguments? Command)
catch (ArgumentSyntaxException ex)
{
console.WriteLine("error: " + ex.Message);
- console.WriteLine(CmdLine.GetHelpText(SerdeInfoProvider.GetInfo(), includeHelp: true));
+ console.WriteLine(CmdLine.GetHelpText(SerdeInfoProvider.GetDeserializeInfo(), includeHelp: true));
return null;
}
}
@@ -344,7 +344,7 @@ public static CommandLineArguments ParseRaw(IAnsiConsole console, string[] args)
dnvmCmd = value;
break;
case Result>.Err(var helpInfos):
- var rootInfo = SerdeInfoProvider.GetInfo();
+ var rootInfo = SerdeInfoProvider.GetDeserializeInfo();
var lastInfo = helpInfos.Last();
console.WriteLine(CmdLine.GetHelpText(rootInfo, lastInfo, includeHelp: true));
return new CommandLineArguments(Command: null);
@@ -438,7 +438,7 @@ public static CommandLineArguments ParseRaw(IAnsiConsole console, string[] args)
}
case null:
{
- console.WriteLine(CmdLine.GetHelpText(SerdeInfoProvider.GetInfo(), includeHelp: true));
+ console.WriteLine(CmdLine.GetHelpText(SerdeInfoProvider.GetDeserializeInfo(), includeHelp: true));
return new CommandLineArguments(Command: null);
}
}
diff --git a/src/dnvm/ManifestSchema/Manifest.cs b/src/dnvm/ManifestSchema/Manifest.cs
index fc25cbd..d4d0732 100644
--- a/src/dnvm/ManifestSchema/Manifest.cs
+++ b/src/dnvm/ManifestSchema/Manifest.cs
@@ -71,8 +71,8 @@ public partial record RegisteredChannel
public required Channel ChannelName { get; init; }
public required SdkDirName SdkDirName { get; init; }
[SerdeMemberOptions(
- SerializeProxy = typeof(EqArrayProxy.Serialize),
- DeserializeProxy = typeof(EqArrayProxy.Deserialize))]
+ SerializeProxy = typeof(EqArrayProxy.Ser),
+ DeserializeProxy = typeof(EqArrayProxy.De))]
public EqArray InstalledSdkVersions { get; init; } = EqArray.Empty;
public bool Untracked { get; init; } = false;
}
diff --git a/src/dnvm/ManifestSchema/ManifestV5.cs b/src/dnvm/ManifestSchema/ManifestV5.cs
index fdb0c31..38b8b45 100644
--- a/src/dnvm/ManifestSchema/ManifestV5.cs
+++ b/src/dnvm/ManifestSchema/ManifestV5.cs
@@ -39,8 +39,8 @@ public partial record TrackedChannelV5
public required Channel ChannelName { get; init; }
public required SdkDirName SdkDirName { get; init; }
[SerdeMemberOptions(
- SerializeProxy = typeof(EqArrayProxy.Serialize),
- DeserializeProxy = typeof(EqArrayProxy.Deserialize))]
+ SerializeProxy = typeof(EqArrayProxy.Ser),
+ DeserializeProxy = typeof(EqArrayProxy.De))]
public EqArray InstalledSdkVersions { get; init; } = EqArray.Empty;
}
diff --git a/src/dnvm/ManifestSchema/ManifestV6.cs b/src/dnvm/ManifestSchema/ManifestV6.cs
index fd94cac..dda9992 100644
--- a/src/dnvm/ManifestSchema/ManifestV6.cs
+++ b/src/dnvm/ManifestSchema/ManifestV6.cs
@@ -41,8 +41,8 @@ public partial record TrackedChannelV6
public required Channel ChannelName { get; init; }
public required SdkDirName SdkDirName { get; init; }
[SerdeMemberOptions(
- SerializeProxy = typeof(EqArrayProxy.Serialize),
- DeserializeProxy = typeof(EqArrayProxy.Deserialize))]
+ SerializeProxy = typeof(EqArrayProxy.Ser),
+ DeserializeProxy = typeof(EqArrayProxy.De))]
public EqArray InstalledSdkVersions { get; init; } = EqArray.Empty;
public bool Untracked { get; init; } = false;
}
diff --git a/src/dnvm/ManifestSchema/ManifestV7.cs b/src/dnvm/ManifestSchema/ManifestV7.cs
index 46785a6..72545d8 100644
--- a/src/dnvm/ManifestSchema/ManifestV7.cs
+++ b/src/dnvm/ManifestSchema/ManifestV7.cs
@@ -70,8 +70,8 @@ public partial record RegisteredChannelV7
public required Channel ChannelName { get; init; }
public required SdkDirName SdkDirName { get; init; }
[SerdeMemberOptions(
- SerializeProxy = typeof(EqArrayProxy.Serialize),
- DeserializeProxy = typeof(EqArrayProxy.Deserialize))]
+ SerializeProxy = typeof(EqArrayProxy.Ser),
+ DeserializeProxy = typeof(EqArrayProxy.De))]
public EqArray InstalledSdkVersions { get; init; } = EqArray.Empty;
public bool Untracked { get; init; } = false;
}
diff --git a/src/dnvm/RestoreCommand.cs b/src/dnvm/RestoreCommand.cs
index 78e1896..9996f5c 100644
--- a/src/dnvm/RestoreCommand.cs
+++ b/src/dnvm/RestoreCommand.cs
@@ -24,7 +24,7 @@ internal sealed partial record GlobalJsonSubset
[GenerateDeserialize]
public sealed partial record SdkSubset
{
- [SerdeMemberOptions(DeserializeProxy = typeof(NullableRefProxy.Deserialize))]
+ [SerdeMemberOptions(DeserializeProxy = typeof(NullableRefProxy.De))]
public SemVersion? Version { get; init; }
public RollForwardOptions? RollForward { get; init; }
public bool? AllowPrerelease { get; init; }
diff --git a/src/dnvm/ScalarDeserializer.cs b/src/dnvm/ScalarDeserializer.cs
index c462d58..eface59 100644
--- a/src/dnvm/ScalarDeserializer.cs
+++ b/src/dnvm/ScalarDeserializer.cs
@@ -9,7 +9,7 @@ public sealed class ScalarDeserializer(string s) : IDeserializer
public bool ReadBool()
=> bool.Parse(s);
- public byte ReadByte()
+ public byte ReadU8()
=> byte.Parse(s);
public char ReadChar()
@@ -18,9 +18,9 @@ public char ReadChar()
public decimal ReadDecimal()
=> decimal.Parse(s);
- public double ReadDouble() => double.Parse(s);
+ public double ReadF64() => double.Parse(s);
- public float ReadFloat() => float.Parse(s);
+ public float ReadF32() => float.Parse(s);
public short ReadI16() => short.Parse(s);
@@ -28,7 +28,7 @@ public decimal ReadDecimal()
public long ReadI64() => long.Parse(s);
- public sbyte ReadSByte() => sbyte.Parse(s);
+ public sbyte ReadI8() => sbyte.Parse(s);
public string ReadString() => s;
@@ -40,16 +40,11 @@ public decimal ReadDecimal()
void IDisposable.Dispose() { }
- T IDeserializer.ReadAny(IDeserializeVisitor v) => v.VisitString(ReadString());
-
- IDeserializeCollection IDeserializer.ReadCollection(ISerdeInfo typeInfo)
- => throw new DeserializeException("Found nullable ref, expected scalar");
-
- T IDeserializer.ReadNullableRef(D deserialize)
+ T IDeserializer.ReadNullableRef(IDeserialize deserialize)
{
return deserialize.Deserialize(this);
}
- IDeserializeType IDeserializer.ReadType(ISerdeInfo typeInfo)
+ ITypeDeserializer IDeserializer.ReadType(ISerdeInfo typeInfo)
=> throw new DeserializeException("Found nullable ref, expected scalar");
}
\ No newline at end of file
diff --git a/src/dnvm/SerdeWraps/SdkDirNameProxy.cs b/src/dnvm/SerdeWraps/SdkDirNameProxy.cs
index 623c6c3..4c9bd40 100644
--- a/src/dnvm/SerdeWraps/SdkDirNameProxy.cs
+++ b/src/dnvm/SerdeWraps/SdkDirNameProxy.cs
@@ -6,19 +6,16 @@ namespace Dnvm;
///
/// Serializes the directly as a string.
///
-internal sealed class SdkDirNameProxy : ISerialize, IDeserialize,
- ISerializeProvider, IDeserializeProvider
+internal sealed class SdkDirNameProxy : ISerde, ISerdeProvider
{
- public static readonly SdkDirNameProxy Instance = new();
- static ISerialize ISerializeProvider.SerializeInstance => Instance;
- static IDeserialize IDeserializeProvider.DeserializeInstance => Instance;
- public static ISerdeInfo SerdeInfo { get; } = Serde.SerdeInfo.MakePrimitive(nameof(SdkDirName));
+ public static SdkDirNameProxy Instance { get; } = new();
+ public ISerdeInfo SerdeInfo => StringProxy.SerdeInfo;
public SdkDirName Deserialize(IDeserializer deserializer)
=> new SdkDirName(StringProxy.Instance.Deserialize(deserializer));
public void Serialize(SdkDirName value, ISerializer serializer)
{
- serializer.SerializeString(value.Name);
+ serializer.WriteString(value.Name);
}
}
\ No newline at end of file
diff --git a/src/dnvm/SerdeWraps/SemVersionProxy.cs b/src/dnvm/SerdeWraps/SemVersionProxy.cs
new file mode 100644
index 0000000..c910672
--- /dev/null
+++ b/src/dnvm/SerdeWraps/SemVersionProxy.cs
@@ -0,0 +1,32 @@
+
+using System;
+using Semver;
+using Serde;
+
+namespace Dnvm;
+
+///
+/// Serializes as a string.
+///
+internal sealed class SemVersionProxy : ISerde, ISerdeProvider
+{
+ static SemVersionProxy ISerdeProvider.Instance { get; } = new SemVersionProxy();
+ private SemVersionProxy() { }
+
+ public ISerdeInfo SerdeInfo { get; } = StringProxy.SerdeInfo;
+
+ public SemVersion Deserialize(IDeserializer deserializer)
+ {
+ var str = deserializer.ReadString();
+ if (SemVersion.TryParse(str, SemVersionStyles.Strict, out var version))
+ {
+ return version;
+ }
+ throw new DeserializeException($"Version string '{str}' is not a valid SemVersion.");
+ }
+
+ public void Serialize(SemVersion value, ISerializer serializer)
+ {
+ serializer.WriteString(value.ToString());
+ }
+}
\ No newline at end of file
diff --git a/src/dnvm/SerdeWraps/SemVersionSerdeWrap.cs b/src/dnvm/SerdeWraps/SemVersionSerdeWrap.cs
deleted file mode 100644
index cbbc56f..0000000
--- a/src/dnvm/SerdeWraps/SemVersionSerdeWrap.cs
+++ /dev/null
@@ -1,36 +0,0 @@
-
-using System;
-using Semver;
-using Serde;
-
-namespace Dnvm;
-
-///
-/// Serializes as a string.
-///
-internal sealed class SemVersionProxy : ISerialize, IDeserialize,
- ISerializeProvider, IDeserializeProvider
-{
- public static readonly SemVersionProxy Instance = new();
- static ISerialize ISerializeProvider.SerializeInstance => Instance;
- static IDeserialize IDeserializeProvider.DeserializeInstance => Instance;
-
- private SemVersionProxy() { }
-
- public static ISerdeInfo SerdeInfo { get; } = Serde.SerdeInfo.MakePrimitive(nameof(SemVersion));
-
- public SemVersion Deserialize(IDeserializer deserializer)
- {
- var str = StringProxy.Instance.Deserialize(deserializer);
- if (SemVersion.TryParse(str, SemVersionStyles.Strict, out var version))
- {
- return version;
- }
- throw new DeserializeException($"Version string '{str}' is not a valid SemVersion.");
- }
-
- public void Serialize(SemVersion value, ISerializer serializer)
- {
- serializer.SerializeString(value.ToString());
- }
-}
\ No newline at end of file
diff --git a/src/dnvm/Utilities/EqArray.cs b/src/dnvm/Utilities/EqArray.cs
index 6068cfb..0e1b006 100644
--- a/src/dnvm/Utilities/EqArray.cs
+++ b/src/dnvm/Utilities/EqArray.cs
@@ -61,30 +61,30 @@ IEnumerator IEnumerable.GetEnumerator()
public static class EqArrayProxy
{
private static readonly ISerdeInfo s_typeInfo = Serde.SerdeInfo.MakeEnumerable(nameof(EqArray));
- public sealed class Serialize : ISerializeProvider>, ISerialize>
+ public sealed class Ser : ISerializeProvider>, ISerialize>
where TProvider : ISerializeProvider
{
- public static readonly Serialize Instance = new();
- static ISerialize> ISerializeProvider>.SerializeInstance => Instance;
+ public static readonly Ser Instance = new();
+ static ISerialize> ISerializeProvider>.Instance => Instance;
- public static ISerdeInfo SerdeInfo => s_typeInfo;
+ public ISerdeInfo SerdeInfo => s_typeInfo;
void ISerialize>.Serialize(EqArray value, ISerializer serializer)
{
- EnumerableHelpers.SerializeSpan(s_typeInfo, value.Array.AsSpan(), TProvider.SerializeInstance, serializer);
+ ImmutableArrayProxy.Ser.Instance.Serialize(value.Array, serializer);
}
}
- public sealed class Deserialize : IDeserializeProvider>, IDeserialize>
+ public sealed class De : IDeserializeProvider>, IDeserialize>
where TProvider : IDeserializeProvider
{
- public static readonly Deserialize Instance = new();
- static IDeserialize> IDeserializeProvider>.DeserializeInstance => Instance;
+ public static readonly De Instance = new();
+ static IDeserialize> IDeserializeProvider>.Instance => Instance;
- public static ISerdeInfo SerdeInfo => s_typeInfo;
+ public ISerdeInfo SerdeInfo => s_typeInfo;
EqArray IDeserialize>.Deserialize(IDeserializer deserializer)
{
- return ImmutableArrayProxy.Deserialize.Instance.Deserialize(deserializer).ToEq();
+ return ImmutableArrayProxy.De.Instance.Deserialize(deserializer).ToEq();
}
}
}
\ No newline at end of file
diff --git a/test/Serde.CmdLine.Test/CliTests.cs b/test/Serde.CmdLine.Test/CliTests.cs
index e8bad67..cc2b7da 100644
--- a/test/Serde.CmdLine.Test/CliTests.cs
+++ b/test/Serde.CmdLine.Test/CliTests.cs
@@ -27,7 +27,7 @@ public void TestSearchPath()
[Fact]
public void TestHelp()
{
- var help = CmdLine.GetHelpText(SerdeInfoProvider.GetInfo());
+ var help = CmdLine.GetHelpText(SerdeInfoProvider.GetDeserializeInfo());
var text = """
usage: FileSizeCommand [-p | --pattern ] [--hidden] [-h | --help]
diff --git a/test/Serde.CmdLine.Test/SubCommandTests.cs b/test/Serde.CmdLine.Test/SubCommandTests.cs
index c1a1a97..d3563b9 100644
--- a/test/Serde.CmdLine.Test/SubCommandTests.cs
+++ b/test/Serde.CmdLine.Test/SubCommandTests.cs
@@ -27,7 +27,7 @@ public void FirstCommand()
[Fact]
public void TopLevelHelp()
{
- var help = CmdLine.GetHelpText(SerdeInfoProvider.GetInfo());
+ var help = CmdLine.GetHelpText(SerdeInfoProvider.GetDeserializeInfo());
var text = """
usage: TopCommand [-v | --verbose] [-h | --help]
diff --git a/test/UnitTests/RestoreTests.cs b/test/UnitTests/RestoreTests.cs
index 8715755..872812d 100644
--- a/test/UnitTests/RestoreTests.cs
+++ b/test/UnitTests/RestoreTests.cs
@@ -407,7 +407,7 @@ public async Task MajorNoExactNoPrerelease() => await TestUtils.RunWithServer(as
{
"sdk": {
"version": "42.42.40",
- "rollForward": "major"
+ "rollForward": "major",
"allowPrerelease": false
}
}