Implement typed RLV protocol parser (#78)
Some checks failed
Native code generation / deterministic (push) Failing after 2m0s
Imaging and meshing gate / native (push) Failing after 4m11s
JPEG 2000 feature / linux (push) Successful in 2m52s
Native Rust workspace compile / compile (push) Failing after 6m15s
Skia feature / linux (push) Has been cancelled

This commit is contained in:
2026-08-10 23:12:02 +00:00
parent 88408c9680
commit 468a0f0619
12 changed files with 2282 additions and 24 deletions

View File

@@ -466,6 +466,8 @@ NATIVE_TYPES = {
# below. This is used for static namespace types such as OSDParser: the type is
# hand-written, while its fixed public methods remain generator-audited.
NATIVE_DECLARATIONS = {
"T:LibreMetaverse.RLV.RlvCommon": "crate::protocol::RlvCommon",
"T:LibreMetaverse.RLV.RlvRestriction": "crate::protocol::RlvRestriction",
"T:LibreMetaverse.AgentManager": "crate::agent_manager::AgentManager",
"T:LibreMetaverse.Animation": "crate::avatar_manager::Animation",
"T:LibreMetaverse.Animesh.AnimationTrack": "crate::animesh_runtime::AnimationTrack",
@@ -508,6 +510,28 @@ NATIVE_DECLARATIONS = {
}
NATIVE_MEMBER_BODIES = {
"M:LibreMetaverse.RLV.RlvCommon.TryGetAttachmentPointFromItemName(System.String,System.Nullable{LibreMetaverse.RLV.RlvAttachmentPoint}@)":
"Self::native_try_get_attachment_point_from_item_name(item_name, attachment_point)",
"M:LibreMetaverse.RLV.RlvRestriction.#ctor(LibreMetaverse.RLV.RlvRestrictionType,System.Guid,System.String,System.Collections.Generic.ICollection{System.Object})":
"Self::native_new(behavior, sender, sender_name, args)",
"M:LibreMetaverse.RLV.RlvRestriction.Equals(System.Object)":
"self.native_equals(obj)",
"M:LibreMetaverse.RLV.RlvRestriction.GetHashCode":
"self.native_get_hash_code()",
"M:LibreMetaverse.RLV.RlvRestriction.ToString":
"self.native_to_string()",
"P:LibreMetaverse.RLV.RlvRestriction.Args":
"self.native_args()",
"P:LibreMetaverse.RLV.RlvRestriction.Behavior":
"self.native_behavior()",
"P:LibreMetaverse.RLV.RlvRestriction.IsException":
"self.native_is_exception()",
"P:LibreMetaverse.RLV.RlvRestriction.OriginalBehavior":
"self.native_original_behavior()",
"P:LibreMetaverse.RLV.RlvRestriction.Sender":
"self.native_sender()",
"P:LibreMetaverse.RLV.RlvRestriction.SenderName":
"self.native_sender_name()",
"M:LibreMetaverse.Rendering.MeshFoundry.#ctor": "Self::native_new()",
"M:LibreMetaverse.Rendering.MeshFoundry.GenerateFacetedMesh(LibreMetaverse.Primitive,LibreMetaverse.Rendering.DetailLevel)":
"self.native_generate_faceted_mesh(prim, lod)",