Ionite
1 year ago
1 changed files with 0 additions and 26 deletions
@ -1,26 +0,0 @@
|
||||
using System; |
||||
using System.Text.Json; |
||||
using System.Text.Json.Nodes; |
||||
|
||||
namespace StabilityMatrix.Avalonia.Models; |
||||
|
||||
public interface ILoadableState<T> : IJsonLoadableState |
||||
{ |
||||
new Type LoadableStateType => typeof(T); |
||||
|
||||
void LoadState(T state); |
||||
|
||||
new void LoadStateFromJsonObject(JsonObject state) |
||||
{ |
||||
state.Deserialize(LoadableStateType); |
||||
} |
||||
|
||||
T SaveState(); |
||||
|
||||
new JsonObject SaveStateToJsonObject() |
||||
{ |
||||
var node = JsonSerializer.SerializeToNode(SaveState()); |
||||
return node?.AsObject() ?? throw new |
||||
InvalidOperationException("Failed to serialize state to JSON object."); |
||||
} |
||||
} |
Loading…
Reference in new issue