Files
SpacetimeDB/crates/bindings-csharp/Runtime/Internal/ViewResultHeader.cs
Ryan 201970e9ca [C#] Update module bindings to use new View ABI (#4146)
# Description of Changes

This change implements the module bindings changes to Views that where
updated with core in #3685 and the Rust module bindings implementation
in #3819.
Updates the C# module bindings to use new header-first view ABI
(`ViewResultHeader`) and updates the return codes for the
`__call_view__` and `__call_view_anon__` module exports. This is a
prerequsite for `Query` builder support being added to C# modules.

# API and ABI breaking changes

Not breaking. Existing modules will continue to use the old ABI. New
modules will use the new ABI. However previous host versions will not
support modules built using this version of the bindings.

# Expected complexity level and risk

2

# Testing

This is an internal refactor. All existing tests should continue to
pass. All existing tests should continue to pass. The only tests that
needed updating were the C# codegen snapshot tests (`Codegen.Tests`)
because the generated view dispatcher bodies changed (they now prefix
`ViewResultHeader.RowData` before the existing row payload).
2026-01-31 01:08:12 +00:00

6 lines
164 B
C#

namespace SpacetimeDB.Internal;
[SpacetimeDB.Type]
public partial record ViewResultHeader
: SpacetimeDB.TaggedEnum<(SpacetimeDB.Unit RowData, string RawSql)>;