You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ClearV9Module(); // Reset module definition and handler registries
207
-
getV9TypeRegistration().clear(); // Reset type registry and error state
207
+
getModuleTypeRegistration().clear(); // Reset type registry and error state
208
208
}
209
209
```
210
210
@@ -308,15 +308,15 @@ if (constraint == FieldConstraint::PrimaryKey) {
308
308
309
309
### Phase 3: Type System Registration
310
310
311
-
**Component**: V9TypeRegistration system (`v9_type_registration.h`)
311
+
**Component**: ModuleTypeRegistration system (`module_type_registration.h`)
312
312
313
313
**Core Principle**: Only user-defined structs and enums get registered in the typespace. Primitives, arrays, Options, and special types are always inlined.
314
314
315
-
**Architecture Note**: V9Builder serves as the registration coordinator but delegates all type processing to the V9TypeRegistration system. This separation ensures a single, unified type registration pathway.
315
+
**Architecture Note**: V9Builder serves as the registration coordinator but delegates all type processing to the ModuleTypeRegistration system. This separation ensures a single, unified type registration pathway.
The library uses a sophisticated hybrid compile-time/runtime architecture:
235
235
236
236
- **Compile-Time Validation** (`table_with_constraints.h`): C++20 concepts and static assertions for constraint validation
237
-
- **V9 Type Registration System** (`internal/v9_type_registration.h`): Unified type registration with error detection and circular reference prevention
237
+
- **Module Type Registration System** (`internal/module_type_registration.h`): Unified type registration with error detection and circular reference prevention
238
238
- **Priority-Ordered Initialization** (`internal/Module.cpp`): __preinit__ functions with numbered priorities ensure correct registration order
239
239
- **Error Detection System** (`internal/Module.cpp`): Multi-layer validation with error module replacement for clear diagnostics
240
240
- **BSATN Serialization** (`bsatn/`): Binary serialization system with algebraic type support for all data types
@@ -274,3 +274,4 @@ See the `modules/*-cpp/src/` directory for example modules:
274
274
## Contributing
275
275
276
276
This library is part of the SpacetimeDB project. Please see the main repository for contribution guidelines.
0 commit comments