From 19c354ed9bb5d5b05c1064708c7cbd8361ea5cd7 Mon Sep 17 00:00:00 2001 From: Meta Vens Date: Mon, 29 Jun 2026 00:15:40 +0100 Subject: [PATCH] Use generic fixed document reads --- Aetheria.State.Verify/Program.cs | 81 ++++--- .../AetheriaUnityObservedDockingIndex.cs | 2 +- .../Tests/DaemonRuntimeDocumentTests.cs | 26 +-- Assets/Scripts/UI/Menu/TradeMenu.cs | 2 +- .../Runtime/AetheriaClientState.cs | 213 +----------------- 5 files changed, 74 insertions(+), 250 deletions(-) diff --git a/Aetheria.State.Verify/Program.cs b/Aetheria.State.Verify/Program.cs index 2c3d4c4b9..b013ea53a 100644 --- a/Aetheria.State.Verify/Program.cs +++ b/Aetheria.State.Verify/Program.cs @@ -5732,7 +5732,7 @@ static void RequireTradeCargoSelectorUseEveSurface(string root) "SetObservedEntityIndex(AetheriaUnityObservedEntityIndex observedEntityIndex)", "AetheriaRuntimeCurrentDockingDocument", "ResolveClient().State.Latest()", - "ResolveClient().State.LatestStationRefit()", + "ResolveClient().State.Latest()", "SetTargetCargo(", "selection.EntityKey", "OwnedQuantity", @@ -7227,7 +7227,7 @@ static bool HasManagedDockingSnapshotAccess(string source) source.Contains("var state = _resolveClient()?.State;", StringComparison.Ordinal) && source.Contains("state.Latest()", StringComparison.Ordinal) && source.Contains("state.Latest()", StringComparison.Ordinal) && - source.Contains("state.LatestStationRefit()", StringComparison.Ordinal) && + source.Contains("state.Latest()", StringComparison.Ordinal) && !source.Contains("State?.CurrentDocking()", StringComparison.Ordinal) && !source.Contains(".State.CurrentDocking()", StringComparison.Ordinal) && !source.Contains("ResolveClient().State.CurrentDocking()", StringComparison.Ordinal) && @@ -7251,7 +7251,7 @@ static bool HasManagedDockingSnapshotAccess(string source) source.Contains("var state = _resolveClient()?.State;", StringComparison.Ordinal) && source.Contains("state.Latest()", StringComparison.Ordinal) && source.Contains("state.Latest()", StringComparison.Ordinal) && - source.Contains("state.LatestStationRefit()", StringComparison.Ordinal) && + source.Contains("state.Latest()", StringComparison.Ordinal) && !source.Contains("State?.CurrentDocking()", StringComparison.Ordinal) && !source.Contains(".State.CurrentDocking()", StringComparison.Ordinal) && !source.Contains("CultMeshReactiveDocument _currentEntity", StringComparison.Ordinal) && @@ -7278,11 +7278,8 @@ static void RequireUnitySharedDocumentAccessorErgonomics(string root) "public CultMeshDocumentHandle Document()", "public Task> ReactiveAsync(", "public CultMeshReactiveDocument Reactive(", - "public AetheriaRuntimeCatalogSnapshot LatestCatalog()", - "public Task LatestPlayerAsync()", - "public AetheriaRuntimePlayerSettingsDocument LatestPlayer()", - "public Task LatestVerseHostAsync()", - "public AetheriaRuntimeVerseHostSettingsDocument LatestVerseHost()", + "public Task LatestAsync()", + "public TDocument Latest()", "public Task LatestAsync()", "public TDocument Latest()", "public Task> ReactiveAsync(", @@ -7902,8 +7899,8 @@ static void RequireUnityViewportAndMapReadsUseManagedAccessors(string root) var clientState = File.ReadAllText(clientStatePath); var requiredClientSymbols = new[] { - "public AetheriaRuntimeSectorMapDocument LatestSectorMap()", - "public AetheriaRuntimeZoneContactsDocument LatestZoneContacts()", + "public CultMeshDocumentHandle Document()", + "public TDocument Latest()", "public TDocument Latest()", "public CultMeshReactiveDocument Reactive(", "public CultMeshDocumentHandle Document(AetheriaRuntimeRtsViewportBounds viewport)", @@ -8109,23 +8106,14 @@ static void RequireAetheriaManagedStateAccessorsCoverDomainDocuments(string root StringSplitOptions.None)[0]; var requiredClientSymbols = new[] { - "public AetheriaRuntimeDaemonFrameDocument LatestDaemonFrame()", - "public AetheriaRuntimeDaemonSoaViewDocument LatestDaemonSoaView()", + "public Task LatestAsync()", + "public TDocument Latest()", "public CultMeshReactiveDocument Reactive(", "public AetheriaRuntimeObservedDaemonState? LatestObservedDaemon()", "public AetheriaRuntimeObservedDockingState? CurrentDocking(", "public CultMeshReactiveDocument Reactive(", "public CultMeshReactiveDocument Reactive(", "public CultMeshReactiveDocument Reactive(", - "public AetheriaRuntimeLoadoutTemplatesDocument LatestLoadoutTemplates()", - "public AetheriaRuntimeStationRefitDocument LatestStationRefit()", - "public AetheriaRuntimeZoneRenderDocument LatestZoneRender()", - "public AetheriaRuntimeDaemonProviderAdvertisementDocument LatestProviderAdvertisement()", - "public AetheriaRuntimeDaemonHealthDocument LatestHealth()", - "public AetheriaRuntimeDaemonCommandBoundaryDocument LatestCommandBoundary()", - "public AetheriaRuntimeVerseAuthorityPolicyDocument LatestAuthorityPolicy()", - "public AetheriaRuntimeDaemonFrameDocument LatestFrameDocument()", - "public AetheriaRuntimeDaemonSoaViewDocument LatestSoaViewDocument()", "public global::Aetheria.State.Documents.EveSurfaceState LatestGameSurface()", "public global::Aetheria.State.Documents.EveSurfaceState LatestGameTuiSurface()", "public global::Aetheria.State.Documents.EveSurfaceState LatestEditorSurface()", @@ -8157,26 +8145,58 @@ static void RequireAetheriaManagedStateAccessorsCoverDomainDocuments(string root var forbiddenFixedReactiveWrappers = new[] { + "LatestCatalog(", + "LatestCatalogAsync(", "ReactiveCatalog(", "ReactiveCatalogAsync(", + "LatestLoadoutTemplates(", + "LatestLoadoutTemplatesAsync(", "ReactiveLoadoutTemplates(", "ReactiveLoadoutTemplatesAsync(", + "LatestSectorMap(", + "LatestSectorMapAsync(", "ReactiveSectorMap(", "ReactiveSectorMapAsync(", + "LatestZoneContacts(", + "LatestZoneContactsAsync(", "ReactiveZoneContacts(", "ReactiveZoneContactsAsync(", + "LatestStationRefit(", + "LatestStationRefitAsync(", "ReactiveStationRefit(", "ReactiveStationRefitAsync(", + "LatestDaemonFrame(", + "LatestDaemonFrameAsync(", "ReactiveDaemonFrame(", "ReactiveDaemonFrameAsync(", + "LatestDaemonSoaView(", + "LatestDaemonSoaViewAsync(", "ReactiveDaemonSoaView(", "ReactiveDaemonSoaViewAsync(", + "LatestZoneRender(", + "LatestZoneRenderAsync(", "ReactiveZoneRender(", "ReactiveZoneRenderAsync(", + "LatestPlayer(", + "LatestPlayerAsync(", "ReactivePlayer(", "ReactivePlayerAsync(", + "LatestVerseHost(", + "LatestVerseHostAsync(", "ReactiveVerseHost(", "ReactiveVerseHostAsync(", + "LatestProviderAdvertisement(", + "LatestProviderAdvertisementAsync(", + "LatestHealth(", + "LatestHealthAsync(", + "LatestCommandBoundary(", + "LatestCommandBoundaryAsync(", + "LatestAuthorityPolicy(", + "LatestAuthorityPolicyAsync(", + "LatestFrameDocument(", + "LatestFrameDocumentAsync(", + "LatestSoaViewDocument(", + "LatestSoaViewDocumentAsync(", "LatestScenario(", "LatestScenarioAsync(", "ReactiveScenario(", @@ -8332,7 +8352,7 @@ static void RequireAetheriaManagedStateAccessorsCoverDomainDocuments(string root "Observed daemon state must not hide typed document access behind aggregate reactive compatibility wrappers."); } - if (observedDaemonState.Contains("state.LatestDaemonFrameAsync()", StringComparison.Ordinal) || + if (observedDaemonState.Contains("state.LatestAsync()", StringComparison.Ordinal) || observedDaemonState.Contains("state.LatestDaemonSoaViewAsync()", StringComparison.Ordinal) || observedDaemonState.Contains("state.ReactiveObservedDaemonAsync()", StringComparison.Ordinal) || observedDaemonState.Contains("TryReadLatestSoaViewAsync", StringComparison.Ordinal)) @@ -8366,12 +8386,10 @@ static void RequireAetheriaManagedStateAccessorsCoverDomainDocuments(string root ".State.Daemon.GameTuiSurface.LatestAsync()", ".State.Daemon.EditorSurface.LatestAsync()", ".State.Daemon.EditorTuiSurface.LatestAsync()", - "client.State.Daemon.LatestFrameDocument()", "client.State.Daemon.LatestGameSurface()", "client.State.Daemon.LatestGameTuiSurface()", "client.State.Daemon.LatestEditorSurface()", "client.State.Daemon.LatestEditorTuiSurface()", - "client.State.Daemon.LatestAuthorityPolicy()", "client.State.ObserveCatalog()", "client.State.ObserveDaemonFrame()", "client.State.ObserveLoadoutTemplates()", @@ -11671,10 +11689,10 @@ static void RequireAetheriaRuntimeVerseClientContract(string root) "public Func CreateEveSurfaceStateRefResolver()", "public CultMeshStateRefResolver CreateEveSurfaceCultMeshStateRefResolver()", "public async Task CreateEveSurfaceCultMeshStateRefResolverAsync()", - "LatestDaemonFrameAsync()", - "LatestHealthAsync()", - "LatestCommandBoundaryAsync()", - "LatestCatalog", + "LatestAsync()", + "LatestAsync()", + "LatestAsync()", + "() => Latest()", "AetheriaRuntimeStateRefResolver.CreateEveSurfaceCultMeshStateRefResolver(" }; var missingClientStateSymbols = requiredClientStateSymbols @@ -11689,7 +11707,8 @@ static void RequireAetheriaRuntimeVerseClientContract(string root) if (clientState.Contains("var frameTask = Daemon.LatestFrameDocumentAsync()", StringComparison.Ordinal) || clientState.Contains("var healthTask = Daemon.LatestHealthAsync()", StringComparison.Ordinal) || - clientState.Contains("var commandBoundaryTask = Daemon.LatestCommandBoundaryAsync()", StringComparison.Ordinal)) + clientState.Contains("var commandBoundaryTask = Daemon.LatestCommandBoundaryAsync()", StringComparison.Ordinal) || + clientState.Contains("LatestCatalog)", StringComparison.Ordinal)) { throw new InvalidOperationException( "AetheriaClientState Eve state-ref resolver must use top-level managed accessors instead of walking through the nested daemon state."); @@ -12938,7 +12957,7 @@ static void RequireMainMenuContinueRunState(string root) "var state = _resolveClient()?.State;", "state.Latest()", "state.Latest()", - "state.LatestStationRefit()", + "state.Latest()", "public bool IsEntityUndocked(Entity entity)", "public bool TryResolveDockingBay(", "out AetheriaRuntimeCurrentDockingDocument docking", @@ -15709,7 +15728,7 @@ static void RequireRuntimeStateReaderOwnsUnityStateAcquisition(string root) !observedDaemonState.Contains("CultMeshReactiveDocument zoneRender", StringComparison.Ordinal) || !observedDaemonState.Contains("var currentZoneRender = zoneRender?.Current;", StringComparison.Ordinal) || !observedDaemonState.Contains("new AetheriaRuntimeObservedDaemonState(currentFrame, currentSoaView, currentZoneRender)", StringComparison.Ordinal) || - !aetheriaClientState.Contains("var zoneRender = await LatestZoneRenderAsync().ConfigureAwait(false);", StringComparison.Ordinal) || + !aetheriaClientState.Contains("var zoneRender = await LatestAsync().ConfigureAwait(false);", StringComparison.Ordinal) || !aetheriaClientState.Contains("return new AetheriaRuntimeObservedDaemonState(frame, soaView, zoneRender);", StringComparison.Ordinal)) { throw new InvalidOperationException( diff --git a/Assets/Scripts/Gameplay/AetheriaUnityObservedDockingIndex.cs b/Assets/Scripts/Gameplay/AetheriaUnityObservedDockingIndex.cs index 229f6d389..8783764d6 100644 --- a/Assets/Scripts/Gameplay/AetheriaUnityObservedDockingIndex.cs +++ b/Assets/Scripts/Gameplay/AetheriaUnityObservedDockingIndex.cs @@ -173,7 +173,7 @@ public sealed class AetheriaUnityObservedDockingIndex : IDisposable var currentEntity = state.Latest(); var currentDocking = state.Latest(); - var stationRefit = state.LatestStationRefit(); + var stationRefit = state.Latest(); if (currentDocking == null || stationRefit == null) return false; diff --git a/Assets/Scripts/Tests/DaemonRuntimeDocumentTests.cs b/Assets/Scripts/Tests/DaemonRuntimeDocumentTests.cs index 3786b11e4..13df12730 100644 --- a/Assets/Scripts/Tests/DaemonRuntimeDocumentTests.cs +++ b/Assets/Scripts/Tests/DaemonRuntimeDocumentTests.cs @@ -165,10 +165,10 @@ public class DaemonRuntimeDocumentTests .GetResult(); var currentEntity = client.State.Latest(); - var latestFrame = client.State.LatestDaemonFrame(); - var catalog = client.State.LatestCatalog(); - var playerSettings = client.State.Settings.LatestPlayer(); - var verseHostSettings = client.State.Settings.LatestVerseHost(); + var latestFrame = client.State.Latest(); + var catalog = client.State.Latest(); + var playerSettings = client.State.Latest(); + var verseHostSettings = client.State.Latest(); var currentEntityByType = client.State .LatestAsync() .GetAwaiter() @@ -204,7 +204,7 @@ public class DaemonRuntimeDocumentTests using var zoneRenderReactive = client.State .Reactive(); var observed = client.State.LatestObservedDaemon(); - var observedAuthoritativeFrame = client.State.LatestDaemonFrame(); + var observedAuthoritativeFrame = client.State.Latest(); using var catalogReactive = client.State.Reactive(); using var daemonFrameReactive = client.State.Reactive(); using var daemonSoaViewReactive = client.State.Reactive(); @@ -231,12 +231,12 @@ public class DaemonRuntimeDocumentTests var gameTuiSurface = client.State.LatestGameTuiSurface(); var editorSurface = client.State.LatestEditorSurface(); var editorTuiSurface = client.State.LatestEditorTuiSurface(); - var authorityStatus = client.State.LatestAuthorityPolicy(); + var authorityStatus = client.State.Latest(); var currentDocking = client.State.Current.Docking .LatestAsync() .GetAwaiter() .GetResult(); - var stationRefit = client.State.LatestStationRefit(); + var stationRefit = client.State.Latest(); var observedDocking = client.State.CurrentDocking(); using var reactiveGameSurface = client.State.ReactiveGameSurface(); using var reactiveGameTuiSurface = client.State.ReactiveGameTuiSurface(); @@ -255,9 +255,9 @@ public class DaemonRuntimeDocumentTests client.State.DocumentBySchema(AetheriaRuntimeDaemonSchemas.StarbridgeSessionSummary)); Assert.AreSame(client.State.LatestFrame, client.State.Document()); Assert.AreSame(client.State.LatestSoaView, client.State.Document()); - Assert.IsNotNull(client.State.LatestProviderAdvertisement()); - Assert.IsNotNull(client.State.LatestHealth()); - Assert.IsNotNull(client.State.LatestCommandBoundary()); + Assert.IsNotNull(client.State.Latest()); + Assert.IsNotNull(client.State.Latest()); + Assert.IsNotNull(client.State.Latest()); Assert.AreSame( client.State.Document(), client.State.DocumentBySchema(AetheriaRuntimeVerseAuthoritySchemas.Policy)); @@ -367,9 +367,9 @@ public class DaemonRuntimeDocumentTests .GetAwaiter() .GetResult(); - var player = client.State.Settings.LatestPlayer(); - var verseHost = client.State.Settings.LatestVerseHost(); - var catalog = client.State.LatestCatalog(); + var player = client.State.Latest(); + var verseHost = client.State.Latest(); + var catalog = client.State.Latest(); Assert.AreEqual(AetheriaRuntimeCatalogSnapshot.SchemaId, client.State.Catalog.Sources.Last().SchemaId); Assert.IsNotNull(catalog); diff --git a/Assets/Scripts/UI/Menu/TradeMenu.cs b/Assets/Scripts/UI/Menu/TradeMenu.cs index d56ccae46..275492736 100644 --- a/Assets/Scripts/UI/Menu/TradeMenu.cs +++ b/Assets/Scripts/UI/Menu/TradeMenu.cs @@ -523,7 +523,7 @@ public class TradeMenu : MonoBehaviour { try { - return ResolveClient().State.LatestStationRefit(); + return ResolveClient().State.Latest(); } catch (Exception ex) { diff --git a/Packages/org.gamecult.aetheria.state/Runtime/AetheriaClientState.cs b/Packages/org.gamecult.aetheria.state/Runtime/AetheriaClientState.cs index dd433a7d6..005f84e12 100644 --- a/Packages/org.gamecult.aetheria.state/Runtime/AetheriaClientState.cs +++ b/Packages/org.gamecult.aetheria.state/Runtime/AetheriaClientState.cs @@ -182,36 +182,11 @@ namespace GameCult.Aetheria.State.Verse return Document().LatestAsync().ConfigureAwait(false).GetAwaiter().GetResult(); } - public AetheriaRuntimeCatalogSnapshot LatestCatalog() - { - return Latest(); - } - - public Task LatestDaemonFrameAsync() - { - return LatestFrame.LatestAsync(); - } - - public AetheriaRuntimeDaemonFrameDocument LatestDaemonFrame() - { - return LatestDaemonFrameAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - - public Task LatestDaemonSoaViewAsync() - { - return LatestSoaView.LatestAsync(); - } - - public AetheriaRuntimeDaemonSoaViewDocument LatestDaemonSoaView() - { - return LatestDaemonSoaViewAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - public async Task LatestObservedDaemonAsync() { - var frame = await LatestDaemonFrameAsync().ConfigureAwait(false); - var soaView = await TryLatestDaemonSoaViewAsync().ConfigureAwait(false); - var zoneRender = await LatestZoneRenderAsync().ConfigureAwait(false); + var frame = await LatestAsync().ConfigureAwait(false); + var soaView = await TryReadDaemonSoaViewAsync().ConfigureAwait(false); + var zoneRender = await LatestAsync().ConfigureAwait(false); return new AetheriaRuntimeObservedDaemonState(frame, soaView, zoneRender); } @@ -256,11 +231,11 @@ namespace GameCult.Aetheria.State.Verse } } - private async Task TryLatestDaemonSoaViewAsync() + private async Task TryReadDaemonSoaViewAsync() { try { - var soaView = await LatestDaemonSoaViewAsync().ConfigureAwait(false); + var soaView = await LatestAsync().ConfigureAwait(false); return string.Equals(soaView.Schema, AetheriaRuntimeDaemonSchemas.SoaView, StringComparison.Ordinal) ? soaView : null; @@ -271,46 +246,6 @@ namespace GameCult.Aetheria.State.Verse } } - public Task LatestProviderAdvertisementAsync() - { - return Daemon.LatestProviderAdvertisementAsync(); - } - - public AetheriaRuntimeDaemonProviderAdvertisementDocument LatestProviderAdvertisement() - { - return LatestProviderAdvertisementAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - - public Task LatestHealthAsync() - { - return Daemon.LatestHealthAsync(); - } - - public AetheriaRuntimeDaemonHealthDocument LatestHealth() - { - return LatestHealthAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - - public Task LatestCommandBoundaryAsync() - { - return Daemon.LatestCommandBoundaryAsync(); - } - - public AetheriaRuntimeDaemonCommandBoundaryDocument LatestCommandBoundary() - { - return LatestCommandBoundaryAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - - public Task LatestAuthorityPolicyAsync() - { - return Daemon.LatestAuthorityPolicyAsync(); - } - - public AetheriaRuntimeVerseAuthorityPolicyDocument LatestAuthorityPolicy() - { - return LatestAuthorityPolicyAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - public Task LatestGameSurfaceAsync() { return Daemon.LatestGameSurfaceAsync(); @@ -399,56 +334,6 @@ namespace GameCult.Aetheria.State.Verse return Daemon.ReactiveEditorTuiSurface(options); } - public Task LatestLoadoutTemplatesAsync() - { - return LoadoutTemplates.LatestAsync(); - } - - public AetheriaRuntimeLoadoutTemplatesDocument LatestLoadoutTemplates() - { - return LatestLoadoutTemplatesAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - - public Task LatestSectorMapAsync() - { - return SectorMap.LatestAsync(); - } - - public AetheriaRuntimeSectorMapDocument LatestSectorMap() - { - return LatestSectorMapAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - - public Task LatestZoneContactsAsync() - { - return ZoneContacts.LatestAsync(); - } - - public AetheriaRuntimeZoneContactsDocument LatestZoneContacts() - { - return LatestZoneContactsAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - - public Task LatestStationRefitAsync() - { - return StationRefit.LatestAsync(); - } - - public AetheriaRuntimeStationRefitDocument LatestStationRefit() - { - return LatestStationRefitAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - - public Task LatestZoneRenderAsync() - { - return ZoneRender.LatestAsync(); - } - - public AetheriaRuntimeZoneRenderDocument LatestZoneRender() - { - return LatestZoneRenderAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - public Observable Watch() where TDocument : class { @@ -488,9 +373,9 @@ namespace GameCult.Aetheria.State.Verse public async Task CreateEveSurfaceCultMeshStateRefResolverAsync() { - var frameTask = LatestDaemonFrameAsync(); - var healthTask = LatestHealthAsync(); - var commandBoundaryTask = LatestCommandBoundaryAsync(); + var frameTask = LatestAsync(); + var healthTask = LatestAsync(); + var commandBoundaryTask = LatestAsync(); await Task.WhenAll(frameTask, healthTask, commandBoundaryTask).ConfigureAwait(false); @@ -498,7 +383,7 @@ namespace GameCult.Aetheria.State.Verse frameTask.Result, healthTask.Result, commandBoundaryTask.Result, - LatestCatalog); + () => Latest()); } } @@ -548,66 +433,6 @@ namespace GameCult.Aetheria.State.Verse public CultMeshDocumentHandle EditorTuiSurface { get; } - public Task LatestProviderAdvertisementAsync() - { - return ProviderAdvertisement.LatestAsync(); - } - - public AetheriaRuntimeDaemonProviderAdvertisementDocument LatestProviderAdvertisement() - { - return LatestProviderAdvertisementAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - - public Task LatestHealthAsync() - { - return Health.LatestAsync(); - } - - public AetheriaRuntimeDaemonHealthDocument LatestHealth() - { - return LatestHealthAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - - public Task LatestCommandBoundaryAsync() - { - return CommandBoundary.LatestAsync(); - } - - public AetheriaRuntimeDaemonCommandBoundaryDocument LatestCommandBoundary() - { - return LatestCommandBoundaryAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - - public Task LatestAuthorityPolicyAsync() - { - return AuthorityPolicy.LatestAsync(); - } - - public AetheriaRuntimeVerseAuthorityPolicyDocument LatestAuthorityPolicy() - { - return LatestAuthorityPolicyAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - - public Task LatestFrameDocumentAsync() - { - return LatestFrame.LatestAsync(); - } - - public AetheriaRuntimeDaemonFrameDocument LatestFrameDocument() - { - return LatestFrameDocumentAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - - public Task LatestSoaViewDocumentAsync() - { - return LatestSoaView.LatestAsync(); - } - - public AetheriaRuntimeDaemonSoaViewDocument LatestSoaViewDocument() - { - return LatestSoaViewDocumentAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - public Task LatestGameSurfaceAsync() { return GameSurface.LatestAsync(); @@ -731,26 +556,6 @@ namespace GameCult.Aetheria.State.Verse public CultMeshDocumentHandle VerseHost { get; } - public Task LatestPlayerAsync() - { - return Player.LatestAsync(); - } - - public AetheriaRuntimePlayerSettingsDocument LatestPlayer() - { - return LatestPlayerAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - - public Task LatestVerseHostAsync() - { - return VerseHost.LatestAsync(); - } - - public AetheriaRuntimeVerseHostSettingsDocument LatestVerseHost() - { - return LatestVerseHostAsync().ConfigureAwait(false).GetAwaiter().GetResult(); - } - } public sealed class AetheriaClientViewportState