Implement StructuredData OSD model and containers

This commit is contained in:
2026-08-09 00:10:12 +00:00
parent ae0b7966e2
commit d152e80ef9
15 changed files with 2408 additions and 1456 deletions

View File

@@ -243,6 +243,7 @@ dependencies = [
name = "libremetaverse-structured-data"
version = "0.0.1"
dependencies = [
"base64",
"libremetaverse-types",
]

View File

@@ -22,12 +22,9 @@ fn catalog_values_and_inert_layouts_are_real() {
}
#[test]
fn serializer_entry_point_returns_its_exact_member_id() {
fn parser_dispatch_rejects_empty_input_without_calling_a_decoder() {
let Err(error) = OSDParser::deserialize_with_bytes(Vec::new()) else {
panic!("failure-only serializer unexpectedly returned a value");
panic!("empty structured data unexpectedly returned a value");
};
assert_eq!(
error.csharp_member(),
Some("M:LibreMetaverse.StructuredData.OSDParser.Deserialize(System.Byte[])")
);
assert_eq!(error, libremetaverse_types::Error::Argument);
}

View File

@@ -20,5 +20,5 @@
"LibreMetaverse.Tests/TypeTests.cs::TypeTests.VectorCasting::test",
"LibreMetaverse.Tests/UtilsConversionsTests.cs::UtilsConversionsTests.StringToBytes::test"
],
"support_passes": 62
"support_passes": 73
}