Implement native object models (#68)
All checks were successful
Native code generation / deterministic (push) Successful in 14m42s
Imaging and meshing gate / native (push) Successful in 4m59s
Native Rust workspace compile / compile (push) Successful in 5m7s

This commit is contained in:
2026-08-10 13:32:08 +00:00
parent cf98152e41
commit 43820f6bd1
11 changed files with 3763 additions and 1441 deletions

View File

@@ -29,14 +29,6 @@ fn each_wire_data_domain_is_callable_and_failure_only() {
member_id(AssetTexture::new_with_constructor()),
"M:LibreMetaverse.Assets.AssetTexture.#ctor"
);
assert_eq!(
member_id(Primitive::new_with_constructor()),
"M:LibreMetaverse.Primitive.#ctor"
);
assert_eq!(
member_id(LegacyMaterial::new_with_constructor()),
"M:LibreMetaverse.Materials.LegacyMaterial.#ctor"
);
assert_eq!(
member_id(GltfDocument::new()),
"M:LibreMetaverse.Assets.Gltf.GltfDocument.#ctor"
@@ -58,6 +50,22 @@ fn each_wire_data_domain_is_callable_and_failure_only() {
);
}
#[test]
fn object_model_domains_are_native() {
assert_eq!(
Primitive::new_with_constructor()
.expect("native primitive constructor")
.local_id,
0
);
assert_eq!(
LegacyMaterial::new_with_constructor()
.expect("native legacy material constructor")
.id(),
libremetaverse_types::UUID::zero()
);
}
#[test]
fn wire_widths_flags_and_constants_match_the_catalog() {
assert_eq!(PacketFrequency::High as u8, 2);