Skip to content

Commit 92e4020

Browse files
Reintroduced Cast<T> instance method.
1 parent 14ea5bc commit 92e4020

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

Open.Serialization/Open.Serialization.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ Part of the "Open" set of libraries.
1717
<RepositoryUrl>https://github.com/electricessence/Open.Serialization</RepositoryUrl>
1818
<RepositoryType>git</RepositoryType>
1919
<PackageTags>serialization</PackageTags>
20-
<Version>2.2.0</Version>
20+
<Version>2.2.1</Version>
2121
<Nullable>enable</Nullable>
2222
<PackageReleaseNotes></PackageReleaseNotes>
2323
</PropertyGroup>

Open.Serialization/SerializerBase.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,13 @@ public virtual ValueTask<T> DeserializeAsync<T>(Stream source, CancellationToken
2222
/// <inheritdoc />
2323
public virtual ValueTask SerializeAsync<T>(Stream target, T item, CancellationToken cancellationToken = default)
2424
=> DefaultMethods.SerializeAsync(this, target, item);
25+
26+
/// <summary>
27+
/// Creates a type specific serializer using this as the underlying serializer.
28+
/// </summary>
29+
/// <returns>A type specific serializer.</returns>
30+
public virtual Serializer<T> Cast<T>()
31+
=> new Serializer<T>(Deserialize<T>, Serialize, DeserializeAsync<T>, SerializeAsync);
2532
}
2633

2734
/// <summary>

0 commit comments

Comments
 (0)