diff --git a/RUSTREWRITE.md b/RUSTREWRITE.md index 315fff9..5079bba 100644 --- a/RUSTREWRITE.md +++ b/RUSTREWRITE.md @@ -60,8 +60,8 @@ The current workspace is a structural baseline, not a working client: members with real fields/constants/enum values and standardized failing bodies; - all 1,289 real NUnit `[Test]`/`[TestCase]` invocations have stable catalog - entries; 455 are translated, 11 live-grid cases and four benchmarks are - reviewed, and 819 remain pending without executable placeholder tests; + entries; 488 are translated, 18 live-grid cases and four benchmarks are + reviewed, and 779 remain pending without executable placeholder tests; - all nine sample/tool projects have compiling Rust binary targets; - the 128 TestClient command source files are retained as a command inventory. @@ -334,8 +334,8 @@ markers in hand-written Rust files, so regeneration records unresolved cases without creating fake executable tests and fails on body drift. The checked-in audit reports pending, translated, ignored-live, benchmark, drifted, missing, duplicate, stale, and unreviewed cases. The initial handover contained 1,289 -unreviewed cases; the current ledger contains 455 translated, 11 reviewed -live-grid cases, four benchmark-reviewed, and 819 pending cases. +unreviewed cases; the current ledger contains 488 translated, 18 reviewed +live-grid cases, four benchmark-reviewed, and 779 pending cases. The Rust tests must call the public APIs rather than internal replacements. Where the C# tests call internal members through friend-assembly access, record diff --git a/api/MAPPING-COVERAGE.md b/api/MAPPING-COVERAGE.md index df1e501..a42d844 100644 --- a/api/MAPPING-COVERAGE.md +++ b/api/MAPPING-COVERAGE.md @@ -47,7 +47,7 @@ External member APIs are not copied. Each signature type resolves to Rust core/s - Properties/indexers/events: **5,090 / 11 / 268** - Delegates and flags enums: **40 / 46** - Optional/ref/out/in parameters: **470 / 6,144 / 555 / 0** -- Async Rust signatures: **330** +- Async Rust signatures: **328** - Descriptively renamed overloads: **7,151** - Explicit CLR delegate APM differences: **80** diff --git a/api/RUST-MAPPING.tsv b/api/RUST-MAPPING.tsv index 70498a4..be7b54f 100644 --- a/api/RUST-MAPPING.tsv +++ b/api/RUST-MAPPING.tsv @@ -11783,28 +11783,28 @@ M:LibreMetaverse.Interfaces.IByteBufferPool.LeaseBytes(System.Int32) method Syst M:LibreMetaverse.Interfaces.IByteBufferPool.ReturnBytes(System.Byte[]) method System.Void LibreMetaverse.Interfaces.IByteBufferPool.ReturnBytes(System.Byte[] bytes) libremetaverse interfaces libremetaverse::interfaces::IByteBufferPool::return_bytes pub fn return_bytes(&self, bytes: Vec) -> Result<(), crate::Error> shared_self,owned sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.Interfaces.IMessage.Deserialize(LibreMetaverse.StructuredData.OSDMap) method System.Void LibreMetaverse.Interfaces.IMessage.Deserialize(LibreMetaverse.StructuredData.OSDMap map) libremetaverse interfaces libremetaverse::interfaces::IMessage::deserialize pub fn deserialize(&mut self, map: libremetaverse_structured_data::OSDMap) -> Result<(), crate::Error> mutable_self,owned sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.Interfaces.IMessage.Serialize method LibreMetaverse.StructuredData.OSDMap LibreMetaverse.Interfaces.IMessage.Serialize() libremetaverse interfaces libremetaverse::interfaces::IMessage::serialize pub fn serialize(&self) -> Result shared_self sync Result<_, crate::Error> direct_snake_case method mapped -M:LibreMetaverse.Inventory.#ctor(LibreMetaverse.GridClient) constructor LibreMetaverse.Inventory(LibreMetaverse.GridClient client) libremetaverse libremetaverse::Inventory::new_with_grid_client pub fn new_with_grid_client(client: libremetaverse::GridClient) -> Result owned sync Result<_, crate::Error> descriptive_overload_name method mapped -M:LibreMetaverse.Inventory.#ctor(LibreMetaverse.GridClient,LibreMetaverse.UUID) constructor LibreMetaverse.Inventory(LibreMetaverse.GridClient client, LibreMetaverse.UUID owner) libremetaverse libremetaverse::Inventory::new_with_grid_client_uuid pub fn new_with_grid_client_uuid(client: libremetaverse::GridClient, owner: libremetaverse_types::UUID) -> Result owned,owned sync Result<_, crate::Error> descriptive_overload_name method mapped +M:LibreMetaverse.Inventory.#ctor(LibreMetaverse.GridClient) constructor LibreMetaverse.Inventory(LibreMetaverse.GridClient client) libremetaverse libremetaverse::Inventory::new_with_grid_client pub fn new_with_grid_client(client: std::sync::Arc) -> Result shared sync Result<_, crate::Error> descriptive_overload_name method mapped +M:LibreMetaverse.Inventory.#ctor(LibreMetaverse.GridClient,LibreMetaverse.UUID) constructor LibreMetaverse.Inventory(LibreMetaverse.GridClient client, LibreMetaverse.UUID owner) libremetaverse libremetaverse::Inventory::new_with_grid_client_uuid pub fn new_with_grid_client_uuid(client: std::sync::Arc, owner: libremetaverse_types::UUID) -> Result shared,owned sync Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.Inventory.Clear method System.Void LibreMetaverse.Inventory.Clear() libremetaverse libremetaverse::Inventory::clear pub fn clear(&self) -> Result<(), crate::Error> shared_self sync Result<_, crate::Error> direct_snake_case method mapped -M:LibreMetaverse.Inventory.Contains(LibreMetaverse.InventoryBase) method System.Boolean LibreMetaverse.Inventory.Contains(LibreMetaverse.InventoryBase obj) libremetaverse libremetaverse::Inventory::contains_with_inventory_base pub fn contains_with_inventory_base(&self, obj: libremetaverse::InventoryBase) -> Result shared_self,owned sync Result<_, crate::Error> descriptive_overload_name method mapped +M:LibreMetaverse.Inventory.Contains(LibreMetaverse.InventoryBase) method System.Boolean LibreMetaverse.Inventory.Contains(LibreMetaverse.InventoryBase obj) libremetaverse libremetaverse::Inventory::contains_with_inventory_base pub fn contains_with_inventory_base(&self, obj: &dyn libremetaverse::InventoryObjectClass) -> Result shared_self,shared_borrow sync Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.Inventory.Contains(LibreMetaverse.UUID) method System.Boolean LibreMetaverse.Inventory.Contains(LibreMetaverse.UUID uuid) libremetaverse libremetaverse::Inventory::contains_with_uuid pub fn contains_with_uuid(&self, uuid: libremetaverse_types::UUID) -> Result shared_self,owned sync Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.Inventory.FindAllLinks(LibreMetaverse.UUID) method System.Collections.Generic.List LibreMetaverse.Inventory.FindAllLinks(LibreMetaverse.UUID assetId) libremetaverse libremetaverse::Inventory::find_all_links pub fn find_all_links(&self, asset_id: libremetaverse_types::UUID) -> Result, crate::Error> shared_self,owned sync Result<_, crate::Error> direct_snake_case method mapped -M:LibreMetaverse.Inventory.GetContents(LibreMetaverse.InventoryFolder) method System.Collections.Generic.List LibreMetaverse.Inventory.GetContents(LibreMetaverse.InventoryFolder folder) libremetaverse libremetaverse::Inventory::get_contents_with_inventory_folder pub fn get_contents_with_inventory_folder(&self, folder: libremetaverse::InventoryFolder) -> Result, crate::Error> shared_self,owned sync Result<_, crate::Error> descriptive_overload_name method mapped -M:LibreMetaverse.Inventory.GetContents(LibreMetaverse.UUID) method System.Collections.Generic.List LibreMetaverse.Inventory.GetContents(LibreMetaverse.UUID folder) libremetaverse libremetaverse::Inventory::get_contents_with_uuid pub fn get_contents_with_uuid(&self, folder: libremetaverse_types::UUID) -> Result, crate::Error> shared_self,owned sync Result<_, crate::Error> descriptive_overload_name method mapped +M:LibreMetaverse.Inventory.GetContents(LibreMetaverse.InventoryFolder) method System.Collections.Generic.List LibreMetaverse.Inventory.GetContents(LibreMetaverse.InventoryFolder folder) libremetaverse libremetaverse::Inventory::get_contents_with_inventory_folder pub fn get_contents_with_inventory_folder(&self, folder: &libremetaverse::InventoryFolder) -> Result>, crate::Error> shared_self,shared_borrow sync Result<_, crate::Error> descriptive_overload_name method mapped +M:LibreMetaverse.Inventory.GetContents(LibreMetaverse.UUID) method System.Collections.Generic.List LibreMetaverse.Inventory.GetContents(LibreMetaverse.UUID folder) libremetaverse libremetaverse::Inventory::get_contents_with_uuid pub fn get_contents_with_uuid(&self, folder: libremetaverse_types::UUID) -> Result>, crate::Error> shared_self,owned sync Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.Inventory.GetNodeFor(LibreMetaverse.UUID) method LibreMetaverse.InventoryNode LibreMetaverse.Inventory.GetNodeFor(LibreMetaverse.UUID uuid) libremetaverse libremetaverse::Inventory::get_node_for pub fn get_node_for(&self, uuid: libremetaverse_types::UUID) -> Result shared_self,owned sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.Inventory.GetNodeOrDefault(LibreMetaverse.UUID) method LibreMetaverse.InventoryNode LibreMetaverse.Inventory.GetNodeOrDefault(LibreMetaverse.UUID uuid) libremetaverse libremetaverse::Inventory::get_node_or_default pub fn get_node_or_default(&self, uuid: libremetaverse_types::UUID) -> Result, crate::Error> shared_self,owned sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.Inventory.GetValueOrDefault(LibreMetaverse.UUID) method LibreMetaverse.InventoryBase LibreMetaverse.Inventory.GetValueOrDefault(LibreMetaverse.UUID uuid) libremetaverse libremetaverse::Inventory::get_value_or_default_with_uuid pub fn get_value_or_default_with_uuid(&self, uuid: libremetaverse_types::UUID) -> Result, crate::Error> shared_self,owned sync Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.Inventory.GetValueOrDefault``1(LibreMetaverse.UUID) method T LibreMetaverse.Inventory.GetValueOrDefault(LibreMetaverse.UUID uuid) libremetaverse libremetaverse::Inventory::get_value_or_default_with_uuid_a7c63fbe pub fn get_value_or_default_with_uuid_a7c63fbe(&self, uuid: libremetaverse_types::UUID) -> Result, crate::Error> shared_self,owned sync Result<_, crate::Error> descriptive_overload_name_with_stable_id method mapped -M:LibreMetaverse.Inventory.RemoveNodeFor(LibreMetaverse.InventoryBase) method System.Void LibreMetaverse.Inventory.RemoveNodeFor(LibreMetaverse.InventoryBase item) libremetaverse libremetaverse::Inventory::remove_node_for pub fn remove_node_for(&self, item: libremetaverse::InventoryBase) -> Result<(), crate::Error> shared_self,owned sync Result<_, crate::Error> direct_snake_case method mapped +M:LibreMetaverse.Inventory.RemoveNodeFor(LibreMetaverse.InventoryBase) method System.Void LibreMetaverse.Inventory.RemoveNodeFor(LibreMetaverse.InventoryBase item) libremetaverse libremetaverse::Inventory::remove_node_for pub fn remove_node_for(&self, item: &dyn libremetaverse::InventoryObjectClass) -> Result<(), crate::Error> shared_self,shared_borrow sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.Inventory.RestoreFromDisk(System.String) method System.Int32 LibreMetaverse.Inventory.RestoreFromDisk(System.String filename) libremetaverse libremetaverse::Inventory::restore_from_disk_with_string pub fn restore_from_disk_with_string(&self, filename: String) -> Result shared_self,owned sync Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.Inventory.RestoreFromDiskAsync(System.String,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.Inventory.RestoreFromDiskAsync(System.String filename, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::Inventory::restore_from_disk_with_string_cancellation_token pub async fn restore_from_disk_with_string_cancellation_token(&self, filename: String, cancellation_token: Option) -> Result shared_self,owned,optional_owned async Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.Inventory.SaveToDisk(System.String) method System.Void LibreMetaverse.Inventory.SaveToDisk(System.String filename) libremetaverse libremetaverse::Inventory::save_to_disk_with_string pub fn save_to_disk_with_string(&self, filename: String) -> Result<(), crate::Error> shared_self,owned sync Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.Inventory.SaveToDiskAsync(System.String,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.Inventory.SaveToDiskAsync(System.String filename, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::Inventory::save_to_disk_with_string_cancellation_token pub async fn save_to_disk_with_string_cancellation_token(&self, filename: String, cancellation_token: Option) -> Result<(), crate::Error> shared_self,owned,optional_owned async Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.Inventory.TryGetNodeFor(LibreMetaverse.UUID,LibreMetaverse.InventoryNode@) method System.Boolean LibreMetaverse.Inventory.TryGetNodeFor(LibreMetaverse.UUID uuid, out LibreMetaverse.InventoryNode& node) libremetaverse libremetaverse::Inventory::try_get_node_for pub fn try_get_node_for(&self, uuid: libremetaverse_types::UUID, node: &mut Option) -> bool shared_self,owned,mutable_output sync infallible_placeholder direct_snake_case method mapped -M:LibreMetaverse.Inventory.TryGetValue(LibreMetaverse.UUID,LibreMetaverse.InventoryBase@) method System.Boolean LibreMetaverse.Inventory.TryGetValue(LibreMetaverse.UUID uuid, out LibreMetaverse.InventoryBase& item) libremetaverse libremetaverse::Inventory::try_get_value_with_uuid_inventory_base pub fn try_get_value_with_uuid_inventory_base(&self, uuid: libremetaverse_types::UUID, item: &mut Option) -> bool shared_self,owned,mutable_output sync infallible_placeholder descriptive_overload_name method mapped +M:LibreMetaverse.Inventory.TryGetValue(LibreMetaverse.UUID,LibreMetaverse.InventoryBase@) method System.Boolean LibreMetaverse.Inventory.TryGetValue(LibreMetaverse.UUID uuid, out LibreMetaverse.InventoryBase& item) libremetaverse libremetaverse::Inventory::try_get_value_with_uuid_inventory_base pub fn try_get_value_with_uuid_inventory_base(&self, uuid: libremetaverse_types::UUID, item: &mut Option>) -> Result shared_self,owned,mutable_output sync Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.Inventory.TryGetValue``1(LibreMetaverse.UUID,``0@) method System.Boolean LibreMetaverse.Inventory.TryGetValue(LibreMetaverse.UUID uuid, out T& item) libremetaverse libremetaverse::Inventory::try_get_value_with_uuid_t pub fn try_get_value_with_uuid_t(&self, uuid: libremetaverse_types::UUID, item: &mut Option) -> bool shared_self,owned,mutable_output sync infallible_placeholder descriptive_overload_name method mapped -M:LibreMetaverse.Inventory.UpdateNodeFor(LibreMetaverse.InventoryBase) method System.Void LibreMetaverse.Inventory.UpdateNodeFor(LibreMetaverse.InventoryBase item) libremetaverse libremetaverse::Inventory::update_node_for pub fn update_node_for(&self, item: libremetaverse::InventoryBase) -> Result<(), crate::Error> shared_self,owned sync Result<_, crate::Error> direct_snake_case method mapped -M:LibreMetaverse.InventoryAISClient.#ctor(LibreMetaverse.GridClient) constructor LibreMetaverse.InventoryAISClient(LibreMetaverse.GridClient client) libremetaverse libremetaverse::InventoryAISClient::new pub fn new(client: libremetaverse::GridClient) -> Result owned sync Result<_, crate::Error> direct_snake_case method mapped +M:LibreMetaverse.Inventory.UpdateNodeFor(LibreMetaverse.InventoryBase) method System.Void LibreMetaverse.Inventory.UpdateNodeFor(LibreMetaverse.InventoryBase item) libremetaverse libremetaverse::Inventory::update_node_for pub fn update_node_for(&self, item: &dyn libremetaverse::InventoryObjectClass) -> Result<(), crate::Error> shared_self,shared_borrow sync Result<_, crate::Error> direct_snake_case method mapped +M:LibreMetaverse.InventoryAISClient.#ctor(LibreMetaverse.GridClient) constructor LibreMetaverse.InventoryAISClient(LibreMetaverse.GridClient client) libremetaverse libremetaverse::InventoryAISClient::new pub fn new(client: Option>) -> Result optional_shared sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryAISClient.CopyCategoryAsync(LibreMetaverse.UUID,LibreMetaverse.UUID,System.Boolean,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryAISClient.CopyCategoryAsync(LibreMetaverse.UUID sourceUuid, LibreMetaverse.UUID destUuid, System.Boolean simulate = default, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryAISClient::copy_category pub async fn copy_category(&self, source_uuid: libremetaverse_types::UUID, dest_uuid: libremetaverse_types::UUID, simulate: Option, cancellation_token: Option) -> Result shared_self,owned,owned,optional_owned,optional_owned async Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryAISClient.CopyCategoryChildrenAsync(System.String,LibreMetaverse.UUID,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryAISClient.CopyCategoryChildrenAsync(System.String category, LibreMetaverse.UUID destUuid, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryAISClient::copy_category_children pub async fn copy_category_children(&self, category: String, dest_uuid: libremetaverse_types::UUID, cancellation_token: Option) -> Result shared_self,owned,owned,optional_owned async Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryAISClient.CopyCategoryLinksAsync(System.String,LibreMetaverse.UUID,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryAISClient.CopyCategoryLinksAsync(System.String category, LibreMetaverse.UUID destUuid, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryAISClient::copy_category_links pub async fn copy_category_links(&self, category: String, dest_uuid: libremetaverse_types::UUID, cancellation_token: Option) -> Result shared_self,owned,owned,optional_owned async Result<_, crate::Error> direct_snake_case method mapped @@ -11827,10 +11827,10 @@ M:LibreMetaverse.InventoryAISClient.MoveCategoryChildrenAsync(System.String,Libr M:LibreMetaverse.InventoryAISClient.MoveCategoryLinksAsync(System.String,LibreMetaverse.UUID,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryAISClient.MoveCategoryLinksAsync(System.String category, LibreMetaverse.UUID destUuid, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryAISClient::move_category_links pub async fn move_category_links(&self, category: String, dest_uuid: libremetaverse_types::UUID, cancellation_token: Option) -> Result shared_self,owned,owned,optional_owned async Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryAISClient.MoveItemAsync(LibreMetaverse.UUID,LibreMetaverse.UUID,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryAISClient.MoveItemAsync(LibreMetaverse.UUID itemUuid, LibreMetaverse.UUID destUuid, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryAISClient::move_item pub async fn move_item(&self, item_uuid: libremetaverse_types::UUID, dest_uuid: libremetaverse_types::UUID, cancellation_token: Option) -> Result shared_self,owned,owned,optional_owned async Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryAISClient.ParseAISResponseMeta(LibreMetaverse.StructuredData.OSDMap) method LibreMetaverse.AISResponseMeta LibreMetaverse.InventoryAISClient.ParseAISResponseMeta(LibreMetaverse.StructuredData.OSDMap response) libremetaverse libremetaverse::InventoryAISClient::parse_ais_response_meta pub fn parse_ais_response_meta(response: Option) -> Result owned sync Result<_, crate::Error> direct_snake_case method mapped -M:LibreMetaverse.InventoryAISClient.ParseEmbedded(LibreMetaverse.StructuredData.OSDMap,System.Collections.Generic.List{LibreMetaverse.InventoryFolder}@,System.Collections.Generic.List{LibreMetaverse.InventoryItem}@,System.Collections.Generic.List{LibreMetaverse.InventoryItem}@) method System.Void LibreMetaverse.InventoryAISClient.ParseEmbedded(LibreMetaverse.StructuredData.OSDMap response, out System.Collections.Generic.List& folders, out System.Collections.Generic.List& items, out System.Collections.Generic.List& links) libremetaverse libremetaverse::InventoryAISClient::parse_embedded pub fn parse_embedded(&self, response: libremetaverse_structured_data::OSDMap, folders: &mut Vec, items: &mut Vec, links: &mut Vec) -> Result<(), crate::Error> shared_self,owned,mutable_output,mutable_output,mutable_output sync Result<_, crate::Error> direct_snake_case method mapped +M:LibreMetaverse.InventoryAISClient.ParseEmbedded(LibreMetaverse.StructuredData.OSDMap,System.Collections.Generic.List{LibreMetaverse.InventoryFolder}@,System.Collections.Generic.List{LibreMetaverse.InventoryItem}@,System.Collections.Generic.List{LibreMetaverse.InventoryItem}@) method System.Void LibreMetaverse.InventoryAISClient.ParseEmbedded(LibreMetaverse.StructuredData.OSDMap response, out System.Collections.Generic.List& folders, out System.Collections.Generic.List& items, out System.Collections.Generic.List& links) libremetaverse libremetaverse::InventoryAISClient::parse_embedded pub fn parse_embedded(&self, response: libremetaverse_structured_data::OSD, folders: &mut Option>, items: &mut Option>, links: &mut Option>) -> Result<(), crate::Error> shared_self,owned,mutable_output,mutable_output,mutable_output sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryAISClient.ParseFoldersFromEmbedded(LibreMetaverse.StructuredData.OSDMap) method System.Collections.Generic.List LibreMetaverse.InventoryAISClient.ParseFoldersFromEmbedded(LibreMetaverse.StructuredData.OSDMap response) libremetaverse libremetaverse::InventoryAISClient::parse_folders_from_embedded pub fn parse_folders_from_embedded(&self, response: libremetaverse_structured_data::OSDMap) -> Result, crate::Error> shared_self,owned sync Result<_, crate::Error> direct_snake_case method mapped -M:LibreMetaverse.InventoryAISClient.ParseItemsFromEmbedded(LibreMetaverse.StructuredData.OSDMap) method System.Collections.Generic.List LibreMetaverse.InventoryAISClient.ParseItemsFromEmbedded(LibreMetaverse.StructuredData.OSDMap response) libremetaverse libremetaverse::InventoryAISClient::parse_items_from_embedded pub fn parse_items_from_embedded(&self, response: libremetaverse_structured_data::OSDMap) -> Result, crate::Error> shared_self,owned sync Result<_, crate::Error> direct_snake_case method mapped -M:LibreMetaverse.InventoryAISClient.ParseLinksFromEmbedded(LibreMetaverse.StructuredData.OSDMap) method System.Collections.Generic.List LibreMetaverse.InventoryAISClient.ParseLinksFromEmbedded(LibreMetaverse.StructuredData.OSDMap response) libremetaverse libremetaverse::InventoryAISClient::parse_links_from_embedded pub fn parse_links_from_embedded(&self, response: libremetaverse_structured_data::OSDMap) -> Result, crate::Error> shared_self,owned sync Result<_, crate::Error> direct_snake_case method mapped +M:LibreMetaverse.InventoryAISClient.ParseItemsFromEmbedded(LibreMetaverse.StructuredData.OSDMap) method System.Collections.Generic.List LibreMetaverse.InventoryAISClient.ParseItemsFromEmbedded(LibreMetaverse.StructuredData.OSDMap response) libremetaverse libremetaverse::InventoryAISClient::parse_items_from_embedded pub fn parse_items_from_embedded(&self, response: Option) -> Result, crate::Error> shared_self,optional_owned sync Result<_, crate::Error> direct_snake_case method mapped +M:LibreMetaverse.InventoryAISClient.ParseLinksFromEmbedded(LibreMetaverse.StructuredData.OSDMap) method System.Collections.Generic.List LibreMetaverse.InventoryAISClient.ParseLinksFromEmbedded(LibreMetaverse.StructuredData.OSDMap response) libremetaverse libremetaverse::InventoryAISClient::parse_links_from_embedded pub fn parse_links_from_embedded(&self, response: Option) -> Result, crate::Error> shared_self,optional_owned sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryAISClient.PurgeDescendentsAsync(LibreMetaverse.UUID,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryAISClient.PurgeDescendentsAsync(LibreMetaverse.UUID categoryUuid, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryAISClient::purge_descendents pub async fn purge_descendents(&self, category_uuid: libremetaverse_types::UUID, cancellation_token: Option) -> Result shared_self,owned,optional_owned async Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryAISClient.PutCategoryChildrenAsync(System.String,LibreMetaverse.StructuredData.OSD,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryAISClient.PutCategoryChildrenAsync(System.String category, LibreMetaverse.StructuredData.OSD childrenPayload, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryAISClient::put_category_children pub async fn put_category_children(&self, category: String, children_payload: libremetaverse_structured_data::OSD, cancellation_token: Option) -> Result shared_self,owned,owned,optional_owned async Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryAISClient.PutCategoryLinksAsync(System.String,LibreMetaverse.StructuredData.OSD,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryAISClient.PutCategoryLinksAsync(System.String category, LibreMetaverse.StructuredData.OSD linksPayload, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryAISClient::put_category_links pub async fn put_category_links(&self, category: String, links_payload: libremetaverse_structured_data::OSD, cancellation_token: Option) -> Result shared_self,owned,owned,optional_owned async Result<_, crate::Error> direct_snake_case method mapped @@ -11873,14 +11873,14 @@ M:LibreMetaverse.InventoryItem.ToString method System.String LibreMetaverse.Inve M:LibreMetaverse.InventoryItem.Update(LibreMetaverse.StructuredData.OSDMap) method System.Void LibreMetaverse.InventoryItem.Update(LibreMetaverse.StructuredData.OSDMap data) libremetaverse libremetaverse::InventoryItem::update pub fn update(&self, data: libremetaverse_structured_data::OSDMap) -> Result<(), crate::Error> shared_self,owned sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryLSL.#ctor(LibreMetaverse.UUID) constructor LibreMetaverse.InventoryLSL(LibreMetaverse.UUID UUID) libremetaverse libremetaverse::InventoryLSL::new pub fn new(uuid: libremetaverse_types::UUID) -> Result owned sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryLandmark.#ctor(LibreMetaverse.UUID) constructor LibreMetaverse.InventoryLandmark(LibreMetaverse.UUID UUID) libremetaverse libremetaverse::InventoryLandmark::new pub fn new(uuid: libremetaverse_types::UUID) -> Result owned sync Result<_, crate::Error> direct_snake_case method mapped -M:LibreMetaverse.InventoryManager.#ctor(LibreMetaverse.GridClient) constructor LibreMetaverse.InventoryManager(LibreMetaverse.GridClient client) libremetaverse libremetaverse::InventoryManager::new pub fn new(client: libremetaverse::GridClient) -> Result owned sync Result<_, crate::Error> direct_snake_case method mapped +M:LibreMetaverse.InventoryManager.#ctor(LibreMetaverse.GridClient) constructor LibreMetaverse.InventoryManager(LibreMetaverse.GridClient client) libremetaverse libremetaverse::InventoryManager::new pub fn new(client: Option>) -> Result optional_shared sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryManager.CopyItemAsync(LibreMetaverse.UUID,LibreMetaverse.UUID,System.String,LibreMetaverse.UUID,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryManager.CopyItemAsync(LibreMetaverse.UUID item, LibreMetaverse.UUID newParent, System.String newName, LibreMetaverse.UUID oldOwnerID, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryManager::copy_item_with_uuid_uuid_string_uuid_cancellation_token pub async fn copy_item_with_uuid_uuid_string_uuid_cancellation_token(&self, item: libremetaverse_types::UUID, new_parent: libremetaverse_types::UUID, new_name: String, old_owner_id: libremetaverse_types::UUID, cancellation_token: Option) -> Result, crate::Error> shared_self,owned,owned,owned,owned,optional_owned async Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.InventoryManager.CopyItemAsync(LibreMetaverse.UUID,LibreMetaverse.UUID,System.String,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryManager.CopyItemAsync(LibreMetaverse.UUID item, LibreMetaverse.UUID newParent, System.String newName, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryManager::copy_item_with_uuid_uuid_string_cancellation_token pub async fn copy_item_with_uuid_uuid_string_cancellation_token(&self, item: libremetaverse_types::UUID, new_parent: libremetaverse_types::UUID, new_name: String, cancellation_token: Option) -> Result, crate::Error> shared_self,owned,owned,owned,optional_owned async Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.InventoryManager.CopyItemsResult.#ctor constructor LibreMetaverse.InventoryManager.CopyItemsResult() libremetaverse libremetaverse::InventoryManagerCopyItemsResult::new pub fn new() -> Result none sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryManager.CopyScriptToTask(System.UInt32,LibreMetaverse.InventoryItem,System.Boolean,LibreMetaverse.Simulator) method LibreMetaverse.UUID LibreMetaverse.InventoryManager.CopyScriptToTask(System.UInt32 objectLocalID, LibreMetaverse.InventoryItem item, System.Boolean enableScript, LibreMetaverse.Simulator simulator = default) libremetaverse libremetaverse::InventoryManager::copy_script_to_task pub fn copy_script_to_task(&self, object_local_id: u32, item: libremetaverse::InventoryItem, enable_script: bool, simulator: Option) -> Result shared_self,owned,owned,owned,optional_owned sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryManager.CreateFolder(LibreMetaverse.UUID,System.String) method LibreMetaverse.UUID LibreMetaverse.InventoryManager.CreateFolder(LibreMetaverse.UUID parentID, System.String name) libremetaverse libremetaverse::InventoryManager::create_folder_with_uuid_string pub fn create_folder_with_uuid_string(&self, parent_id: libremetaverse_types::UUID, name: String) -> Result shared_self,owned,owned sync Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.InventoryManager.CreateFolder(LibreMetaverse.UUID,System.String,LibreMetaverse.FolderType) method LibreMetaverse.UUID LibreMetaverse.InventoryManager.CreateFolder(LibreMetaverse.UUID parentID, System.String name, LibreMetaverse.FolderType preferredType) libremetaverse libremetaverse::InventoryManager::create_folder_with_uuid_string_folder_type pub fn create_folder_with_uuid_string_folder_type(&self, parent_id: libremetaverse_types::UUID, name: String, preferred_type: libremetaverse_types::FolderType) -> Result shared_self,owned,owned,owned sync Result<_, crate::Error> descriptive_overload_name method mapped -M:LibreMetaverse.InventoryManager.CreateInventoryItem(LibreMetaverse.InventoryType,LibreMetaverse.UUID) method LibreMetaverse.InventoryItem LibreMetaverse.InventoryManager.CreateInventoryItem(LibreMetaverse.InventoryType type, LibreMetaverse.UUID id) libremetaverse libremetaverse::InventoryManager::create_inventory_item pub fn create_inventory_item(type_: libremetaverse_types::InventoryType, id: libremetaverse_types::UUID) -> Result owned,owned sync Result<_, crate::Error> direct_snake_case method mapped +M:LibreMetaverse.InventoryManager.CreateInventoryItem(LibreMetaverse.InventoryType,LibreMetaverse.UUID) method LibreMetaverse.InventoryItem LibreMetaverse.InventoryManager.CreateInventoryItem(LibreMetaverse.InventoryType type, LibreMetaverse.UUID id) libremetaverse libremetaverse::InventoryManager::create_inventory_item pub fn create_inventory_item(type_: libremetaverse_types::InventoryType, id: libremetaverse_types::UUID) -> Result, crate::Error> owned,owned sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryManager.CreateItemAsync(LibreMetaverse.UUID,System.String,System.String,LibreMetaverse.AssetType,LibreMetaverse.UUID,LibreMetaverse.InventoryType,LibreMetaverse.PermissionMask,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryManager.CreateItemAsync(LibreMetaverse.UUID parentFolder, System.String name, System.String description, LibreMetaverse.AssetType type, LibreMetaverse.UUID assetTransactionID, LibreMetaverse.InventoryType invType, LibreMetaverse.PermissionMask nextOwnerMask, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryManager::create_item_with_uuid_string_string_asset_type_uuid_inventory_type_permission_mask_cancellation_token pub async fn create_item_with_uuid_string_string_asset_type_uuid_inventory_type_permission_mask_cancellation_token(&self, parent_folder: libremetaverse_types::UUID, name: String, description: String, type_: libremetaverse_types::AssetType, asset_transaction_id: libremetaverse_types::UUID, inv_type: libremetaverse_types::InventoryType, next_owner_mask: libremetaverse::PermissionMask, cancellation_token: Option) -> Result, crate::Error> shared_self,owned,owned,owned,owned,owned,owned,owned,optional_owned async Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.InventoryManager.CreateItemAsync(LibreMetaverse.UUID,System.String,System.String,LibreMetaverse.AssetType,LibreMetaverse.UUID,LibreMetaverse.InventoryType,LibreMetaverse.WearableType,LibreMetaverse.PermissionMask,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryManager.CreateItemAsync(LibreMetaverse.UUID parentFolder, System.String name, System.String description, LibreMetaverse.AssetType type, LibreMetaverse.UUID assetTransactionID, LibreMetaverse.InventoryType invType, LibreMetaverse.WearableType wearableType, LibreMetaverse.PermissionMask nextOwnerMask, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryManager::create_item_with_uuid_string_string_asset_type_uuid_inventory_type_wearable_type_permission_mask_cancellation_token pub async fn create_item_with_uuid_string_string_asset_type_uuid_inventory_type_wearable_type_permission_mask_cancellation_token(&self, parent_folder: libremetaverse_types::UUID, name: String, description: String, type_: libremetaverse_types::AssetType, asset_transaction_id: libremetaverse_types::UUID, inv_type: libremetaverse_types::InventoryType, wearable_type: libremetaverse_types::WearableType, next_owner_mask: libremetaverse::PermissionMask, cancellation_token: Option) -> Result, crate::Error> shared_self,owned,owned,owned,owned,owned,owned,owned,owned,optional_owned async Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.InventoryManager.CreateItemFromAssetAsync(System.Byte[],System.String,System.String,LibreMetaverse.AssetType,LibreMetaverse.InventoryType,LibreMetaverse.UUID,LibreMetaverse.Permissions,System.Threading.CancellationToken,System.IProgress{LibreMetaverse.HttpCapsClient.ProgressReport}) method System.Threading.Tasks.Task LibreMetaverse.InventoryManager.CreateItemFromAssetAsync(System.Byte[] data, System.String name, System.String description, LibreMetaverse.AssetType assetType, LibreMetaverse.InventoryType invType, LibreMetaverse.UUID folderID, LibreMetaverse.Permissions permissions, System.Threading.CancellationToken cancellationToken = default, System.IProgress progress = default) libremetaverse libremetaverse::InventoryManager::create_item_from_asset pub async fn create_item_from_asset(&self, data: Vec, name: String, description: String, asset_type: libremetaverse_types::AssetType, inv_type: libremetaverse_types::InventoryType, folder_id: libremetaverse_types::UUID, permissions: libremetaverse::Permissions, cancellation_token: Option, progress: Option>>) -> Result shared_self,owned,owned,owned,owned,owned,owned,owned,optional_owned,optional_owned async Result<_, crate::Error> direct_snake_case method mapped @@ -11900,13 +11900,13 @@ M:LibreMetaverse.InventoryManager.FetchItemHttpAsync(LibreMetaverse.UUID,LibreMe M:LibreMetaverse.InventoryManager.FindFolderForType(LibreMetaverse.AssetType) method LibreMetaverse.UUID LibreMetaverse.InventoryManager.FindFolderForType(LibreMetaverse.AssetType type) libremetaverse libremetaverse::InventoryManager::find_folder_for_type_with_asset_type pub fn find_folder_for_type_with_asset_type(&self, type_: libremetaverse_types::AssetType) -> Result shared_self,owned sync Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.InventoryManager.FindFolderForType(LibreMetaverse.FolderType) method LibreMetaverse.UUID LibreMetaverse.InventoryManager.FindFolderForType(LibreMetaverse.FolderType type) libremetaverse libremetaverse::InventoryManager::find_folder_for_type_with_folder_type pub fn find_folder_for_type_with_folder_type(&self, type_: libremetaverse_types::FolderType) -> Result shared_self,owned sync Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.InventoryManager.FindObjectByPathAsync(LibreMetaverse.UUID,LibreMetaverse.UUID,System.String,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryManager.FindObjectByPathAsync(LibreMetaverse.UUID baseFolder, LibreMetaverse.UUID inventoryOwner, System.String path, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryManager::find_object_by_path pub async fn find_object_by_path(&self, base_folder: libremetaverse_types::UUID, inventory_owner: libremetaverse_types::UUID, path: String, cancellation_token: Option) -> Result shared_self,owned,owned,owned,optional_owned async Result<_, crate::Error> direct_snake_case method mapped -M:LibreMetaverse.InventoryManager.FolderContentsAsync(LibreMetaverse.UUID,LibreMetaverse.UUID,System.Boolean,System.Boolean,LibreMetaverse.InventorySortOrder,System.Threading.CancellationToken,System.Boolean) method System.Threading.Tasks.Task> LibreMetaverse.InventoryManager.FolderContentsAsync(LibreMetaverse.UUID folder, LibreMetaverse.UUID owner, System.Boolean fetchFolders, System.Boolean fetchItems, LibreMetaverse.InventorySortOrder order, System.Threading.CancellationToken cancellationToken = default, System.Boolean followLinks = default) libremetaverse libremetaverse::InventoryManager::folder_contents pub async fn folder_contents(&self, folder: libremetaverse_types::UUID, owner: libremetaverse_types::UUID, fetch_folders: bool, fetch_items: bool, order: libremetaverse::InventorySortOrder, cancellation_token: Option, follow_links: Option) -> Result, crate::Error> shared_self,owned,owned,owned,owned,owned,optional_owned,optional_owned async Result<_, crate::Error> direct_snake_case method mapped +M:LibreMetaverse.InventoryManager.FolderContentsAsync(LibreMetaverse.UUID,LibreMetaverse.UUID,System.Boolean,System.Boolean,LibreMetaverse.InventorySortOrder,System.Threading.CancellationToken,System.Boolean) method System.Threading.Tasks.Task> LibreMetaverse.InventoryManager.FolderContentsAsync(LibreMetaverse.UUID folder, LibreMetaverse.UUID owner, System.Boolean fetchFolders, System.Boolean fetchItems, LibreMetaverse.InventorySortOrder order, System.Threading.CancellationToken cancellationToken = default, System.Boolean followLinks = default) libremetaverse libremetaverse::InventoryManager::folder_contents pub async fn folder_contents(&self, folder: libremetaverse_types::UUID, owner: libremetaverse_types::UUID, fetch_folders: bool, fetch_items: bool, order: libremetaverse::InventorySortOrder, cancellation_token: Option, follow_links: Option) -> Result>, crate::Error> shared_self,owned,owned,owned,owned,owned,optional_owned,optional_owned sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryManager.FolderUpdateResult.#ctor constructor LibreMetaverse.InventoryManager.FolderUpdateResult() libremetaverse libremetaverse::InventoryManagerFolderUpdateResult::new pub fn new() -> Result none sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryManager.GetInventoryRecursiveAsync(LibreMetaverse.UUID,LibreMetaverse.UUID,System.Collections.Generic.List{LibreMetaverse.InventoryFolder},System.Collections.Generic.List{LibreMetaverse.InventoryItem},System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryManager.GetInventoryRecursiveAsync(LibreMetaverse.UUID folderID, LibreMetaverse.UUID owner, System.Collections.Generic.List cats, System.Collections.Generic.List items, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryManager::get_inventory_recursive pub async fn get_inventory_recursive(&self, folder_id: libremetaverse_types::UUID, owner: libremetaverse_types::UUID, cats: Vec, items: Vec, cancellation_token: Option) -> Result<(), crate::Error> shared_self,owned,owned,owned,owned,optional_owned async Result<_, crate::Error> direct_snake_case method mapped -M:LibreMetaverse.InventoryManager.GetTaskInventoryAsync(LibreMetaverse.UUID,System.UInt32,LibreMetaverse.Simulator,System.Threading.CancellationToken) method System.Threading.Tasks.Task> LibreMetaverse.InventoryManager.GetTaskInventoryAsync(LibreMetaverse.UUID objectID, System.UInt32 objectLocalID, LibreMetaverse.Simulator simulator = default, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryManager::get_task_inventory pub async fn get_task_inventory(&self, object_id: libremetaverse_types::UUID, object_local_id: u32, simulator: Option, cancellation_token: Option) -> Result, crate::Error> shared_self,owned,owned,optional_owned,optional_owned async Result<_, crate::Error> direct_snake_case method mapped +M:LibreMetaverse.InventoryManager.GetTaskInventoryAsync(LibreMetaverse.UUID,System.UInt32,LibreMetaverse.Simulator,System.Threading.CancellationToken) method System.Threading.Tasks.Task> LibreMetaverse.InventoryManager.GetTaskInventoryAsync(LibreMetaverse.UUID objectID, System.UInt32 objectLocalID, LibreMetaverse.Simulator simulator = default, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryManager::get_task_inventory pub async fn get_task_inventory(&self, object_id: libremetaverse_types::UUID, object_local_id: u32, simulator: Option, cancellation_token: Option) -> Result>, crate::Error> shared_self,owned,owned,optional_owned,optional_owned sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryManager.GiveFolderAsync(LibreMetaverse.UUID,System.String,LibreMetaverse.UUID,System.Boolean,System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryManager.GiveFolderAsync(LibreMetaverse.UUID folderID, System.String folderName, LibreMetaverse.UUID recipient, System.Boolean doEffect, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryManager::give_folder pub async fn give_folder(&self, folder_id: libremetaverse_types::UUID, folder_name: String, recipient: libremetaverse_types::UUID, do_effect: bool, cancellation_token: Option) -> Result<(), crate::Error> shared_self,owned,owned,owned,owned,optional_owned async Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryManager.GiveItem(LibreMetaverse.UUID,System.String,LibreMetaverse.AssetType,LibreMetaverse.UUID,System.Boolean) method System.Void LibreMetaverse.InventoryManager.GiveItem(LibreMetaverse.UUID itemID, System.String itemName, LibreMetaverse.AssetType assetType, LibreMetaverse.UUID recipient, System.Boolean doEffect) libremetaverse libremetaverse::InventoryManager::give_item pub fn give_item(&self, item_id: libremetaverse_types::UUID, item_name: String, asset_type: libremetaverse_types::AssetType, recipient: libremetaverse_types::UUID, do_effect: bool) -> Result<(), crate::Error> shared_self,owned,owned,owned,owned,owned sync Result<_, crate::Error> direct_snake_case method mapped -M:LibreMetaverse.InventoryManager.ItemCRC(LibreMetaverse.InventoryItem) method System.UInt32 LibreMetaverse.InventoryManager.ItemCRC(LibreMetaverse.InventoryItem iitem) libremetaverse libremetaverse::InventoryManager::item_crc pub fn item_crc(iitem: libremetaverse::InventoryItem) -> Result owned sync Result<_, crate::Error> direct_snake_case method mapped +M:LibreMetaverse.InventoryManager.ItemCRC(LibreMetaverse.InventoryItem) method System.UInt32 LibreMetaverse.InventoryManager.ItemCRC(LibreMetaverse.InventoryItem iitem) libremetaverse libremetaverse::InventoryManager::item_crc pub fn item_crc(iitem: &libremetaverse::InventoryItem) -> Result shared_borrow sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryManager.LocalFind(LibreMetaverse.UUID,System.String[],System.Int32,System.Boolean) method System.Collections.Generic.List LibreMetaverse.InventoryManager.LocalFind(LibreMetaverse.UUID baseFolder, System.String[] path, System.Int32 level, System.Boolean firstOnly) libremetaverse libremetaverse::InventoryManager::local_find pub fn local_find(&self, base_folder: libremetaverse_types::UUID, path: Vec, level: i32, first_only: bool) -> Result, crate::Error> shared_self,owned,owned,owned,owned sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryManager.Move(LibreMetaverse.InventoryBase,LibreMetaverse.InventoryFolder) method System.Void LibreMetaverse.InventoryManager.Move(LibreMetaverse.InventoryBase item, LibreMetaverse.InventoryFolder newParent) libremetaverse libremetaverse::InventoryManager::move_ pub fn move_(&self, item: libremetaverse::InventoryBase, new_parent: libremetaverse::InventoryFolder) -> Result<(), crate::Error> shared_self,owned,owned sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryManager.MoveFolder(LibreMetaverse.UUID,LibreMetaverse.UUID,System.Threading.CancellationToken) method System.Void LibreMetaverse.InventoryManager.MoveFolder(LibreMetaverse.UUID folderID, LibreMetaverse.UUID newParentID, System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryManager::move_folder_with_uuid_uuid_cancellation_token pub fn move_folder_with_uuid_uuid_cancellation_token(&self, folder_id: libremetaverse_types::UUID, new_parent_id: libremetaverse_types::UUID, cancellation_token: Option) -> Result<(), crate::Error> shared_self,owned,owned,optional_owned sync Result<_, crate::Error> descriptive_overload_name method mapped @@ -11966,7 +11966,7 @@ M:LibreMetaverse.InventoryManager.UploadThumbnailAsync(LibreMetaverse.UUID,Libre M:LibreMetaverse.InventoryManager.WaitForNextInventoryOfferAsync(System.Threading.CancellationToken) method System.Threading.Tasks.Task LibreMetaverse.InventoryManager.WaitForNextInventoryOfferAsync(System.Threading.CancellationToken cancellationToken = default) libremetaverse libremetaverse::InventoryManager::wait_for_next_inventory_offer pub async fn wait_for_next_inventory_offer(&self, cancellation_token: Option) -> Result shared_self,optional_owned async Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryMaterial.#ctor(LibreMetaverse.UUID) constructor LibreMetaverse.InventoryMaterial(LibreMetaverse.UUID UUID) libremetaverse libremetaverse::InventoryMaterial::new pub fn new(uuid: libremetaverse_types::UUID) -> Result owned sync Result<_, crate::Error> direct_snake_case method mapped M:LibreMetaverse.InventoryNode.#ctor constructor LibreMetaverse.InventoryNode() libremetaverse libremetaverse::InventoryNode::new_with_constructor pub fn new_with_constructor() -> Result none sync Result<_, crate::Error> descriptive_overload_name method mapped -M:LibreMetaverse.InventoryNode.#ctor(LibreMetaverse.InventoryBase) constructor LibreMetaverse.InventoryNode(LibreMetaverse.InventoryBase data) libremetaverse libremetaverse::InventoryNode::new_with_inventory_base pub fn new_with_inventory_base(data: libremetaverse::InventoryBase) -> Result owned sync Result<_, crate::Error> descriptive_overload_name method mapped +M:LibreMetaverse.InventoryNode.#ctor(LibreMetaverse.InventoryBase) constructor LibreMetaverse.InventoryNode(LibreMetaverse.InventoryBase data) libremetaverse libremetaverse::InventoryNode::new_with_inventory_base pub fn new_with_inventory_base(data: &dyn libremetaverse::InventoryObjectClass) -> Result shared_borrow sync Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.InventoryNode.#ctor(LibreMetaverse.InventoryBase,LibreMetaverse.InventoryNode) constructor LibreMetaverse.InventoryNode(LibreMetaverse.InventoryBase data, LibreMetaverse.InventoryNode parent) libremetaverse libremetaverse::InventoryNode::new_with_inventory_base_inventory_node pub fn new_with_inventory_base_inventory_node(data: libremetaverse::InventoryBase, parent: libremetaverse::InventoryNode) -> Result owned,owned sync Result<_, crate::Error> descriptive_overload_name method mapped M:LibreMetaverse.InventoryNode.ToString method System.String LibreMetaverse.InventoryNode.ToString() libremetaverse libremetaverse::InventoryNode::to_string pub fn to_string(&self) -> String shared_self sync infallible_placeholder direct_snake_case method mapped M:LibreMetaverse.InventoryNodeDictionary.#ctor(LibreMetaverse.InventoryNode) constructor LibreMetaverse.InventoryNodeDictionary(LibreMetaverse.InventoryNode parent) libremetaverse libremetaverse::InventoryNodeDictionary::new pub fn new(parent: libremetaverse::InventoryNode) -> Result owned sync Result<_, crate::Error> direct_snake_case method mapped @@ -28135,7 +28135,7 @@ P:LibreMetaverse.InventoryManager.FolderUpdateResult.FolderID property LibreMeta P:LibreMetaverse.InventoryManager.FolderUpdateResult.Success property System.Boolean LibreMetaverse.InventoryManager.FolderUpdateResult.Success libremetaverse libremetaverse::InventoryManagerFolderUpdateResult::success pub fn success(&self) -> bool ; pub fn set_success(&mut self, value: bool) shared_or_mutable_self sync infallible_placeholder direct_snake_case accessor_methods mapped P:LibreMetaverse.InventoryManager.NoResults property System.Threading.Tasks.Task> LibreMetaverse.InventoryManager.NoResults libremetaverse libremetaverse::InventoryManager::no_results pub fn no_results() -> libremetaverse_types::compat::Task> none sync infallible_placeholder direct_snake_case accessor_methods mapped P:LibreMetaverse.InventoryManager.Store property LibreMetaverse.Inventory LibreMetaverse.InventoryManager.Store libremetaverse libremetaverse::InventoryManager::store pub fn store(&self) -> Option shared_self sync infallible_placeholder direct_snake_case accessor_methods mapped -P:LibreMetaverse.InventoryNode.Data property LibreMetaverse.InventoryBase LibreMetaverse.InventoryNode.Data libremetaverse libremetaverse::InventoryNode::data pub fn data(&self) -> Option ; pub fn set_data(&mut self, value: Option) shared_or_mutable_self sync infallible_placeholder direct_snake_case accessor_methods mapped +P:LibreMetaverse.InventoryNode.Data property LibreMetaverse.InventoryBase LibreMetaverse.InventoryNode.Data libremetaverse libremetaverse::InventoryNode::data pub fn data(&self) -> Option> ; pub fn set_data(&mut self, value: Option>) shared_or_mutable_self sync infallible_placeholder direct_snake_case accessor_methods mapped P:LibreMetaverse.InventoryNode.ModifyTime property System.DateTime LibreMetaverse.InventoryNode.ModifyTime libremetaverse libremetaverse::InventoryNode::modify_time pub fn modify_time(&self) -> std::time::SystemTime shared_self sync infallible_placeholder direct_snake_case accessor_methods mapped P:LibreMetaverse.InventoryNode.NeedsUpdate property System.Boolean LibreMetaverse.InventoryNode.NeedsUpdate libremetaverse libremetaverse::InventoryNode::needs_update pub fn needs_update(&self) -> bool ; pub fn set_needs_update(&mut self, value: bool) shared_or_mutable_self sync infallible_placeholder direct_snake_case accessor_methods mapped P:LibreMetaverse.InventoryNode.Nodes property LibreMetaverse.InventoryNodeDictionary LibreMetaverse.InventoryNode.Nodes libremetaverse libremetaverse::InventoryNode::nodes pub fn nodes(&self) -> libremetaverse::InventoryNodeDictionary ; pub fn set_nodes(&mut self, value: libremetaverse::InventoryNodeDictionary) shared_or_mutable_self sync infallible_placeholder direct_snake_case accessor_methods mapped diff --git a/crates/libremetaverse/src/generated.rs b/crates/libremetaverse/src/generated.rs index ef247b4..6dfa81f 100644 --- a/crates/libremetaverse/src/generated.rs +++ b/crates/libremetaverse/src/generated.rs @@ -14199,14 +14199,16 @@ impl Inventory { ) } /// C# member: `M:LibreMetaverse.Inventory.#ctor(LibreMetaverse.GridClient)`. - pub fn new_with_grid_client(client: libremetaverse::GridClient) -> Result { + pub fn new_with_grid_client( + client: std::sync::Arc, + ) -> Result { libremetaverse_types::not_implemented( "M:LibreMetaverse.Inventory.#ctor(LibreMetaverse.GridClient)", ) } /// C# member: `M:LibreMetaverse.Inventory.#ctor(LibreMetaverse.GridClient,LibreMetaverse.UUID)`. pub fn new_with_grid_client_uuid( - client: libremetaverse::GridClient, + client: std::sync::Arc, owner: libremetaverse_types::UUID, ) -> Result { libremetaverse_types::not_implemented( @@ -14220,7 +14222,7 @@ impl Inventory { /// C# member: `M:LibreMetaverse.Inventory.Contains(LibreMetaverse.InventoryBase)`. pub fn contains_with_inventory_base( &self, - obj: libremetaverse::InventoryBase, + obj: &dyn libremetaverse::InventoryObjectClass, ) -> Result { libremetaverse_types::not_implemented( "M:LibreMetaverse.Inventory.Contains(LibreMetaverse.InventoryBase)", @@ -14247,8 +14249,8 @@ impl Inventory { /// C# member: `M:LibreMetaverse.Inventory.GetContents(LibreMetaverse.InventoryFolder)`. pub fn get_contents_with_inventory_folder( &self, - folder: libremetaverse::InventoryFolder, - ) -> Result, crate::Error> { + folder: &libremetaverse::InventoryFolder, + ) -> Result>, crate::Error> { libremetaverse_types::not_implemented( "M:LibreMetaverse.Inventory.GetContents(LibreMetaverse.InventoryFolder)", ) @@ -14257,7 +14259,7 @@ impl Inventory { pub fn get_contents_with_uuid( &self, folder: libremetaverse_types::UUID, - ) -> Result, crate::Error> { + ) -> Result>, crate::Error> { libremetaverse_types::not_implemented( "M:LibreMetaverse.Inventory.GetContents(LibreMetaverse.UUID)", ) @@ -14299,7 +14301,10 @@ impl Inventory { ) } /// C# member: `M:LibreMetaverse.Inventory.RemoveNodeFor(LibreMetaverse.InventoryBase)`. - pub fn remove_node_for(&self, item: libremetaverse::InventoryBase) -> Result<(), crate::Error> { + pub fn remove_node_for( + &self, + item: &dyn libremetaverse::InventoryObjectClass, + ) -> Result<(), crate::Error> { libremetaverse_types::not_implemented( "M:LibreMetaverse.Inventory.RemoveNodeFor(LibreMetaverse.InventoryBase)", ) @@ -14350,10 +14355,10 @@ impl Inventory { pub fn try_get_value_with_uuid_inventory_base( &self, uuid: libremetaverse_types::UUID, - item: &mut Option, - ) -> bool { - libremetaverse_types::unimplemented_api!( - "M:LibreMetaverse.Inventory.TryGetValue(LibreMetaverse.UUID,LibreMetaverse.InventoryBase@)" + item: &mut Option>, + ) -> Result { + libremetaverse_types::not_implemented( + "M:LibreMetaverse.Inventory.TryGetValue(LibreMetaverse.UUID,LibreMetaverse.InventoryBase@)", ) } /// C# member: `M:LibreMetaverse.Inventory.TryGetValue``1(LibreMetaverse.UUID,``0@)`. @@ -14367,7 +14372,10 @@ impl Inventory { ) } /// C# member: `M:LibreMetaverse.Inventory.UpdateNodeFor(LibreMetaverse.InventoryBase)`. - pub fn update_node_for(&self, item: libremetaverse::InventoryBase) -> Result<(), crate::Error> { + pub fn update_node_for( + &self, + item: &dyn libremetaverse::InventoryObjectClass, + ) -> Result<(), crate::Error> { libremetaverse_types::not_implemented( "M:LibreMetaverse.Inventory.UpdateNodeFor(LibreMetaverse.InventoryBase)", ) @@ -14438,7 +14446,9 @@ impl InventoryAISClient { /// C# member: `F:LibreMetaverse.InventoryAISClient.LIBRARY_CAP_NAME`. pub const LIBRARY_CAP_NAME: &'static str = "LibraryAPIv3"; /// C# member: `M:LibreMetaverse.InventoryAISClient.#ctor(LibreMetaverse.GridClient)`. - pub fn new(client: libremetaverse::GridClient) -> Result { + pub fn new( + client: Option>, + ) -> Result { libremetaverse_types::not_implemented( "M:LibreMetaverse.InventoryAISClient.#ctor(LibreMetaverse.GridClient)", ) @@ -14731,10 +14741,10 @@ impl InventoryAISClient { /// C# member: `M:LibreMetaverse.InventoryAISClient.ParseEmbedded(LibreMetaverse.StructuredData.OSDMap,System.Collections.Generic.List{LibreMetaverse.InventoryFolder}@,System.Collections.Generic.List{LibreMetaverse.InventoryItem}@,System.Collections.Generic.List{LibreMetaverse.InventoryItem}@)`. pub fn parse_embedded( &self, - response: libremetaverse_structured_data::OSDMap, - folders: &mut Vec, - items: &mut Vec, - links: &mut Vec, + response: libremetaverse_structured_data::OSD, + folders: &mut Option>, + items: &mut Option>, + links: &mut Option>, ) -> Result<(), crate::Error> { libremetaverse_types::not_implemented( "M:LibreMetaverse.InventoryAISClient.ParseEmbedded(LibreMetaverse.StructuredData.OSDMap,System.Collections.Generic.List{LibreMetaverse.InventoryFolder}@,System.Collections.Generic.List{LibreMetaverse.InventoryItem}@,System.Collections.Generic.List{LibreMetaverse.InventoryItem}@)", @@ -14752,7 +14762,7 @@ impl InventoryAISClient { /// C# member: `M:LibreMetaverse.InventoryAISClient.ParseItemsFromEmbedded(LibreMetaverse.StructuredData.OSDMap)`. pub fn parse_items_from_embedded( &self, - response: libremetaverse_structured_data::OSDMap, + response: Option, ) -> Result, crate::Error> { libremetaverse_types::not_implemented( "M:LibreMetaverse.InventoryAISClient.ParseItemsFromEmbedded(LibreMetaverse.StructuredData.OSDMap)", @@ -14761,7 +14771,7 @@ impl InventoryAISClient { /// C# member: `M:LibreMetaverse.InventoryAISClient.ParseLinksFromEmbedded(LibreMetaverse.StructuredData.OSDMap)`. pub fn parse_links_from_embedded( &self, - response: libremetaverse_structured_data::OSDMap, + response: Option, ) -> Result, crate::Error> { libremetaverse_types::not_implemented( "M:LibreMetaverse.InventoryAISClient.ParseLinksFromEmbedded(LibreMetaverse.StructuredData.OSDMap)", @@ -14859,7 +14869,10 @@ impl InventoryAISClient { } /// C# type: `T:LibreMetaverse.InventoryAnimation`. -pub struct InventoryAnimation; +pub struct InventoryAnimation { + /// Rust composition for C# base type `LibreMetaverse.InventoryItem`. + pub base: libremetaverse::InventoryItem, +} impl InventoryAnimation { /// C# member: `M:LibreMetaverse.InventoryAnimation.#ctor(LibreMetaverse.UUID)`. pub fn new(uuid: libremetaverse_types::UUID) -> Result { @@ -14953,7 +14966,10 @@ impl InventoryBase { } /// C# type: `T:LibreMetaverse.InventoryCallingCard`. -pub struct InventoryCallingCard; +pub struct InventoryCallingCard { + /// Rust composition for C# base type `LibreMetaverse.InventoryItem`. + pub base: libremetaverse::InventoryItem, +} impl InventoryCallingCard { /// C# member: `M:LibreMetaverse.InventoryCallingCard.#ctor(LibreMetaverse.UUID)`. pub fn new(uuid: libremetaverse_types::UUID) -> Result { @@ -14964,7 +14980,10 @@ impl InventoryCallingCard { } /// C# type: `T:LibreMetaverse.InventoryCategory`. -pub struct InventoryCategory; +pub struct InventoryCategory { + /// Rust composition for C# base type `LibreMetaverse.InventoryItem`. + pub base: libremetaverse::InventoryItem, +} impl InventoryCategory { /// C# member: `M:LibreMetaverse.InventoryCategory.#ctor(LibreMetaverse.UUID)`. pub fn new(uuid: libremetaverse_types::UUID) -> Result { @@ -15083,7 +15102,10 @@ impl InventoryFolder { } /// C# type: `T:LibreMetaverse.InventoryGesture`. -pub struct InventoryGesture; +pub struct InventoryGesture { + /// Rust composition for C# base type `LibreMetaverse.InventoryItem`. + pub base: libremetaverse::InventoryItem, +} impl InventoryGesture { /// C# member: `M:LibreMetaverse.InventoryGesture.#ctor(LibreMetaverse.UUID)`. pub fn new(uuid: libremetaverse_types::UUID) -> Result { @@ -15312,7 +15334,10 @@ impl InventoryItemFlags { } /// C# type: `T:LibreMetaverse.InventoryLSL`. -pub struct InventoryLSL; +pub struct InventoryLSL { + /// Rust composition for C# base type `LibreMetaverse.InventoryItem`. + pub base: libremetaverse::InventoryItem, +} impl InventoryLSL { /// C# member: `M:LibreMetaverse.InventoryLSL.#ctor(LibreMetaverse.UUID)`. pub fn new(uuid: libremetaverse_types::UUID) -> Result { @@ -15323,7 +15348,10 @@ impl InventoryLSL { } /// C# type: `T:LibreMetaverse.InventoryLandmark`. -pub struct InventoryLandmark; +pub struct InventoryLandmark { + /// Rust composition for C# base type `LibreMetaverse.InventoryItem`. + pub base: libremetaverse::InventoryItem, +} impl InventoryLandmark { /// C# member: `M:LibreMetaverse.InventoryLandmark.#ctor(LibreMetaverse.UUID)`. pub fn new(uuid: libremetaverse_types::UUID) -> Result { @@ -15435,7 +15463,9 @@ impl InventoryManager { /// C# member: `F:LibreMetaverse.InventoryManager.MAX_GIVE_ITEMS`. pub const MAX_GIVE_ITEMS: i32 = 66; /// C# member: `M:LibreMetaverse.InventoryManager.#ctor(LibreMetaverse.GridClient)`. - pub fn new(client: libremetaverse::GridClient) -> Result { + pub fn new( + client: Option>, + ) -> Result { libremetaverse_types::not_implemented( "M:LibreMetaverse.InventoryManager.#ctor(LibreMetaverse.GridClient)", ) @@ -15502,7 +15532,7 @@ impl InventoryManager { pub fn create_inventory_item( type_: libremetaverse_types::InventoryType, id: libremetaverse_types::UUID, - ) -> Result { + ) -> Result, crate::Error> { libremetaverse_types::not_implemented( "M:LibreMetaverse.InventoryManager.CreateInventoryItem(LibreMetaverse.InventoryType,LibreMetaverse.UUID)", ) @@ -15730,7 +15760,7 @@ impl InventoryManager { order: libremetaverse::InventorySortOrder, cancellation_token: Option, follow_links: Option, - ) -> Result, crate::Error> { + ) -> Result>, crate::Error> { libremetaverse_types::not_implemented( "M:LibreMetaverse.InventoryManager.FolderContentsAsync(LibreMetaverse.UUID,LibreMetaverse.UUID,System.Boolean,System.Boolean,LibreMetaverse.InventorySortOrder,System.Threading.CancellationToken,System.Boolean)", ) @@ -15755,7 +15785,7 @@ impl InventoryManager { object_local_id: u32, simulator: Option, cancellation_token: Option, - ) -> Result, crate::Error> { + ) -> Result>, crate::Error> { libremetaverse_types::not_implemented( "M:LibreMetaverse.InventoryManager.GetTaskInventoryAsync(LibreMetaverse.UUID,System.UInt32,LibreMetaverse.Simulator,System.Threading.CancellationToken)", ) @@ -15787,7 +15817,7 @@ impl InventoryManager { ) } /// C# member: `M:LibreMetaverse.InventoryManager.ItemCRC(LibreMetaverse.InventoryItem)`. - pub fn item_crc(iitem: libremetaverse::InventoryItem) -> Result { + pub fn item_crc(iitem: &libremetaverse::InventoryItem) -> Result { libremetaverse_types::not_implemented( "M:LibreMetaverse.InventoryManager.ItemCRC(LibreMetaverse.InventoryItem)", ) @@ -16783,7 +16813,10 @@ impl InventoryManagerFolderUpdateResult { } /// C# type: `T:LibreMetaverse.InventoryMaterial`. -pub struct InventoryMaterial; +pub struct InventoryMaterial { + /// Rust composition for C# base type `LibreMetaverse.InventoryItem`. + pub base: libremetaverse::InventoryItem, +} impl InventoryMaterial { /// C# member: `M:LibreMetaverse.InventoryMaterial.#ctor(LibreMetaverse.UUID)`. pub fn new(uuid: libremetaverse_types::UUID) -> Result { @@ -16802,7 +16835,7 @@ impl InventoryNode { } /// C# member: `M:LibreMetaverse.InventoryNode.#ctor(LibreMetaverse.InventoryBase)`. pub fn new_with_inventory_base( - data: libremetaverse::InventoryBase, + data: &dyn libremetaverse::InventoryObjectClass, ) -> Result { libremetaverse_types::not_implemented( "M:LibreMetaverse.InventoryNode.#ctor(LibreMetaverse.InventoryBase)", @@ -16822,11 +16855,11 @@ impl InventoryNode { libremetaverse_types::unimplemented_api!("M:LibreMetaverse.InventoryNode.ToString") } /// C# member: `P:LibreMetaverse.InventoryNode.Data`. - pub fn data(&self) -> Option { + pub fn data(&self) -> Option> { libremetaverse_types::unimplemented_api!("P:LibreMetaverse.InventoryNode.Data") } /// Setter for C# member: `P:LibreMetaverse.InventoryNode.Data`. - pub fn set_data(&mut self, value: Option) { + pub fn set_data(&mut self, value: Option>) { libremetaverse_types::unimplemented_api!("P:LibreMetaverse.InventoryNode.Data") } /// C# member: `P:LibreMetaverse.InventoryNode.ModifyTime`. @@ -16935,7 +16968,10 @@ impl InventoryNodeDictionary { } /// C# type: `T:LibreMetaverse.InventoryNotecard`. -pub struct InventoryNotecard; +pub struct InventoryNotecard { + /// Rust composition for C# base type `LibreMetaverse.InventoryItem`. + pub base: libremetaverse::InventoryItem, +} impl InventoryNotecard { /// C# member: `M:LibreMetaverse.InventoryNotecard.#ctor(LibreMetaverse.UUID)`. pub fn new(uuid: libremetaverse_types::UUID) -> Result { @@ -17101,7 +17137,10 @@ impl InventoryObjectUpdatedEventArgs { } /// C# type: `T:LibreMetaverse.InventorySettings`. -pub struct InventorySettings; +pub struct InventorySettings { + /// Rust composition for C# base type `LibreMetaverse.InventoryItem`. + pub base: libremetaverse::InventoryItem, +} impl InventorySettings { /// C# member: `M:LibreMetaverse.InventorySettings.#ctor(LibreMetaverse.UUID)`. pub fn new(uuid: libremetaverse_types::UUID) -> Result { @@ -17112,7 +17151,10 @@ impl InventorySettings { } /// C# type: `T:LibreMetaverse.InventorySnapshot`. -pub struct InventorySnapshot; +pub struct InventorySnapshot { + /// Rust composition for C# base type `LibreMetaverse.InventoryItem`. + pub base: libremetaverse::InventoryItem, +} impl InventorySnapshot { /// C# member: `M:LibreMetaverse.InventorySnapshot.#ctor(LibreMetaverse.UUID)`. pub fn new(uuid: libremetaverse_types::UUID) -> Result { @@ -17138,7 +17180,10 @@ impl InventorySortOrder { } /// C# type: `T:LibreMetaverse.InventorySound`. -pub struct InventorySound; +pub struct InventorySound { + /// Rust composition for C# base type `LibreMetaverse.InventoryItem`. + pub base: libremetaverse::InventoryItem, +} impl InventorySound { /// C# member: `M:LibreMetaverse.InventorySound.#ctor(LibreMetaverse.UUID)`. pub fn new(uuid: libremetaverse_types::UUID) -> Result { diff --git a/crates/libremetaverse/src/lib.rs b/crates/libremetaverse/src/lib.rs index 7a168e4..82f7a91 100644 --- a/crates/libremetaverse/src/lib.rs +++ b/crates/libremetaverse/src/lib.rs @@ -143,6 +143,77 @@ pub use libremetaverse_structured_data as structured_data; pub use libremetaverse_types as types; pub use libremetaverse_types::Error; +/// Rust object-safe view of the C# `InventoryBase` inheritance hierarchy. +pub trait InventoryObjectClass: std::any::Any { + /// Returns the concrete value for exact C# runtime-type checks. + fn as_any(&self) -> &dyn std::any::Any; + + /// Returns the shared `InventoryBase` portion of the concrete object. + fn inventory_base(&self) -> &InventoryBase; +} + +/// Rust object-safe view of concrete classes derived from C# `InventoryItem`. +pub trait InventoryItemClass: InventoryObjectClass {} + +macro_rules! inventory_object_class { + ($type:ty, $base:ident $(.$nested:ident)*) => { + impl InventoryObjectClass for $type { + fn as_any(&self) -> &dyn std::any::Any { + self + } + + fn inventory_base(&self) -> &InventoryBase { + &self.$base$(.$nested)* + } + } + }; +} + +impl InventoryObjectClass for InventoryBase { + fn as_any(&self) -> &dyn std::any::Any { + self + } + + fn inventory_base(&self) -> &InventoryBase { + self + } +} + +inventory_object_class!(InventoryFolder, base); +inventory_object_class!(InventoryItem, base); +inventory_object_class!(InventoryAnimation, base.base); +inventory_object_class!(InventoryAttachment, base.base); +inventory_object_class!(InventoryCallingCard, base.base); +inventory_object_class!(InventoryCategory, base.base); +inventory_object_class!(InventoryGesture, base.base); +inventory_object_class!(InventoryLSL, base.base); +inventory_object_class!(InventoryLandmark, base.base); +inventory_object_class!(InventoryMaterial, base.base); +inventory_object_class!(InventoryNotecard, base.base); +inventory_object_class!(InventoryObject, base.base); +inventory_object_class!(InventorySettings, base.base); +inventory_object_class!(InventorySnapshot, base.base); +inventory_object_class!(InventorySound, base.base); +inventory_object_class!(InventoryTexture, base.base); +inventory_object_class!(InventoryWearable, base.base); + +impl InventoryItemClass for InventoryItem {} +impl InventoryItemClass for InventoryAnimation {} +impl InventoryItemClass for InventoryAttachment {} +impl InventoryItemClass for InventoryCallingCard {} +impl InventoryItemClass for InventoryCategory {} +impl InventoryItemClass for InventoryGesture {} +impl InventoryItemClass for InventoryLSL {} +impl InventoryItemClass for InventoryLandmark {} +impl InventoryItemClass for InventoryMaterial {} +impl InventoryItemClass for InventoryNotecard {} +impl InventoryItemClass for InventoryObject {} +impl InventoryItemClass for InventorySettings {} +impl InventoryItemClass for InventorySnapshot {} +impl InventoryItemClass for InventorySound {} +impl InventoryItemClass for InventoryTexture {} +impl InventoryItemClass for InventoryWearable {} + /// Project-owned boundary types for external `MessagePack` signatures. pub mod message_pack { pub trait IMessagePackFormatter {} diff --git a/tests/PARITY.md b/tests/PARITY.md index f01d182..ab7fdcc 100644 --- a/tests/PARITY.md +++ b/tests/PARITY.md @@ -5,9 +5,9 @@ Generated from LibreMetaverse `2aa70bb68513b39795da5d13c88f31b86e85a3ba`. Stable ## Status - Total: **1,289** -- Pending/unreviewed: **819** -- Translated/reviewed: **455** -- Ignored live/reviewed: **11** (19 upstream live candidates) +- Pending/unreviewed: **779** +- Translated/reviewed: **488** +- Ignored live/reviewed: **18** (19 upstream live candidates) - Benchmarks/reviewed: **4** (4 upstream benchmark candidates) - Drifted: **0** @@ -165,9 +165,9 @@ Reviewed Rust tests live outside `generated_parity.rs` and carry a `parity-case` | `LibreMetaverse.Tests/BinaryLLSDTests.cs::BinarySDTests.DeserializeNestedComposite::test` | `BinarySDTests.DeserializeNestedComposite` | `` | `LibreMetaverse.Tests/BinaryLLSDTests.cs:598` | `` | `` | `tests/compat/tests/structured_data.rs:579 (`binary_deserialize_nested_composite`)` | `translated` | `60f8cf739fecf42c98ae4e0878d06234278b9d8370afc38f0d501d62f8ff9cdf` | | `LibreMetaverse.Tests/BinaryLLSDTests.cs::BinarySDTests.SerializeNestedComposite::test` | `BinarySDTests.SerializeNestedComposite` | `` | `LibreMetaverse.Tests/BinaryLLSDTests.cs:632` | `` | `` | `tests/compat/tests/structured_data.rs:587 (`binary_serialize_nested_composite`)` | `translated` | `092b52da3f0cf720595fdb84c929c8ad033c60ff978429cb1d27f9e215936b10` | | `LibreMetaverse.Tests/BinaryLLSDTests.cs::BinarySDTests.SerializeLongMessage::test` | `BinarySDTests.SerializeLongMessage` | `` | `LibreMetaverse.Tests/BinaryLLSDTests.cs:676` | `` | `` | `tests/compat/tests/structured_data.rs:598 (`binary_serialize_long_message`)` | `translated` | `b49afb91578e6c19193cd48acf161a9f8c57bbd20245783054709a509f63780e` | -| `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.InventoryAISClient_Null_Throws::test` | `ConstructorNullArgumentTests.InventoryAISClient_Null_Throws` | `` | `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs:9` | `` | `` | `pending source translation` | `pending` | `ac92e375efc45c50b37e6c82aea372d605fceb470ce053a025e05ff47a5c7121` | +| `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.InventoryAISClient_Null_Throws::test` | `ConstructorNullArgumentTests.InventoryAISClient_Null_Throws` | `` | `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs:9` | `` | `` | `tests/compat/tests/inventory_ais_semantics.rs:120 (`inventory_ais_client_null_throws`)` | `translated` | `ac92e375efc45c50b37e6c82aea372d605fceb470ce053a025e05ff47a5c7121` | | `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.GridManager_Null_Throws::test` | `ConstructorNullArgumentTests.GridManager_Null_Throws` | `` | `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs:15` | `` | `` | `pending source translation` | `pending` | `e972a95f334b0f46948cda34c27124c28c44faf4372d0e598d7dc60050b49be4` | -| `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.InventoryManager_Null_Throws::test` | `ConstructorNullArgumentTests.InventoryManager_Null_Throws` | `` | `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs:21` | `` | `` | `pending source translation` | `pending` | `5e7498066c944800354abbc71eea825fe90d0c40a25a6065967a3ebcc9efea74` | +| `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.InventoryManager_Null_Throws::test` | `ConstructorNullArgumentTests.InventoryManager_Null_Throws` | `` | `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs:21` | `` | `` | `tests/compat/tests/inventory_manager_semantics.rs:16 (`inventory_manager_null_throws`)` | `translated` | `5e7498066c944800354abbc71eea825fe90d0c40a25a6065967a3ebcc9efea74` | | `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.AppearanceManager_Null_Throws::test` | `ConstructorNullArgumentTests.AppearanceManager_Null_Throws` | `` | `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs:27` | `` | `` | `pending source translation` | `pending` | `a3c872805bc924b5a1a9441d5c9eb61ed6d6e9477e4bb411131359290b144ab4` | | `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.ObjectManager_Null_Throws::test` | `ConstructorNullArgumentTests.ObjectManager_Null_Throws` | `` | `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs:33` | `` | `` | `pending source translation` | `pending` | `8a11feba0edfb35e5dd99f681182e8f5a5cf8a3f738211b45a683a8a2ad45ddb` | | `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.AgentManager_Null_Throws::test` | `ConstructorNullArgumentTests.AgentManager_Null_Throws` | `` | `LibreMetaverse.Tests/ConstructorNullArgumentTests.cs:39` | `` | `` | `pending source translation` | `pending` | `d86e41b6cdd03063685aa330c31b9a274c1d400b9a461abf3065fe185fe0bbf0` | @@ -274,40 +274,40 @@ Reviewed Rust tests live outside `generated_parity.rs` and carry a `parity-case` | `LibreMetaverse.Tests/HelpersZeroCodingTests.cs::HelpersZeroCodingTests.ZeroEncode_WithAppendedAcks_HandlesCorrectly::test` | `HelpersZeroCodingTests.ZeroEncode_WithAppendedAcks_HandlesCorrectly` | `` | `LibreMetaverse.Tests/HelpersZeroCodingTests.cs:231` | `Helpers` | `` | `tests/compat/tests/wire_semantics.rs:235 (`zero_encode_with_appended_acks_preserves_count`)` | `translated` | `9803ec7bad46a1fd0f32c58d3ee08cf6a98b03a40a336ae231d1faf8211b273a` | | `LibreMetaverse.Tests/HelpersZeroCodingTests.cs::HelpersZeroCodingTests.ZeroEncodeAndDecode_RoundTrip_PreservesData::test` | `HelpersZeroCodingTests.ZeroEncodeAndDecode_RoundTrip_PreservesData` | `` | `LibreMetaverse.Tests/HelpersZeroCodingTests.cs:254` | `Helpers` | `` | `tests/compat/tests/wire_semantics.rs:248 (`zero_encode_decode_round_trip_preserves_patterns`)` | `translated` | `7847520873f87d798ea94fd1b6543db9d3606829a4bc3f4ec873e629fb6687eb` | | `LibreMetaverse.Tests/HttpCapsClientNonHttpLocationTests.cs::HttpCapsClientNonHttpLocationTests.PutAsync_ResponseWithNonHttpLocationHeader_DoesNotThrow::test` | `HttpCapsClientNonHttpLocationTests.PutAsync_ResponseWithNonHttpLocationHeader_DoesNotThrow` | `` | `LibreMetaverse.Tests/HttpCapsClientNonHttpLocationTests.cs:47` | `Http` | `` | `tests/compat/tests/network_semantics.rs:279 (`put_response_with_non_http_location_does_not_throw`)` | `translated` | `9dbcf4023212af6f2294fa048068fe2f4d9e7e3f976d8eefb1dacbc9f6899aa8` | -| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseLinksFromEmbedded_ObjectAsset_ResultsInAttachmentInventoryTypeAndParsesFields::test` | `InventoryAISClientTests.ParseLinksFromEmbedded_ObjectAsset_ResultsInAttachmentInventoryTypeAndParsesFields` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:37` | `` | `` | `pending source translation` | `pending` | `3ae365ed34f12d036dcd44c94f8568d163cfeec2a58b4975975b77b418770131` | -| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseItemsFromEmbedded_ItemsKey_ParsesConcreteItems::test` | `InventoryAISClientTests.ParseItemsFromEmbedded_ItemsKey_ParsesConcreteItems` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:82` | `` | `` | `pending source translation` | `pending` | `d9e7c64106639071e1ec6ada7346bfa050a31183becaac79efefcd4755fe2855` | -| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseLinksFromEmbedded_MeshAsset_TreatedAsAttachment::test` | `InventoryAISClientTests.ParseLinksFromEmbedded_MeshAsset_TreatedAsAttachment` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:122` | `` | `` | `pending source translation` | `pending` | `f807110d577c654128dd8d42e618c610c260c4f3367cf2795776564409f876a2` | -| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseItemsFromEmbedded_TopLevelItemsKey_WorksWithoutEmbedded::test` | `InventoryAISClientTests.ParseItemsFromEmbedded_TopLevelItemsKey_WorksWithoutEmbedded` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:160` | `` | `` | `pending source translation` | `pending` | `9c8f2090d59ff5e75e75381a7283c501cadd56e591991cdead23c504738a0a6d` | -| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseLinksFromEmbedded_TopLevelLinksKey_WorksWithoutEmbedded::test` | `InventoryAISClientTests.ParseLinksFromEmbedded_TopLevelLinksKey_WorksWithoutEmbedded` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:193` | `` | `` | `pending source translation` | `pending` | `29afd2bd6a554959d6cfa99b632672d56bbb5bcad2ccbaf8caf4773a514f5d79` | -| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseItemsFromEmbedded_NullOrEmpty_ReturnsEmptyList::test` | `InventoryAISClientTests.ParseItemsFromEmbedded_NullOrEmpty_ReturnsEmptyList` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:227` | `` | `` | `pending source translation` | `pending` | `198fb619bbf396a4b1a7b4b85b7fba8808ae127e2575b2b84d21f01a2bdbc445` | -| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseEmbedded_CombinesItemsAndLinks::test` | `InventoryAISClientTests.ParseEmbedded_CombinesItemsAndLinks` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:236` | `` | `` | `pending source translation` | `pending` | `f2ebf4638c9aef3c846dc182d97d80c95118799428cf8c2bba86163e33196846` | -| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.MoveCategoryLinksAsync_AlwaysReturnsFalse::test` | `InventoryAISClientTests.MoveCategoryLinksAsync_AlwaysReturnsFalse` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:259` | `` | `` | `pending source translation` | `pending` | `bebad05897efc0da2f959b4f567faa3ffee950520d13265ecbab1dee978f4886` | -| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.MoveCategoryLinksAsync_ReturnsCompletedTask::test` | `InventoryAISClientTests.MoveCategoryLinksAsync_ReturnsCompletedTask` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:268` | `` | `` | `pending source translation` | `pending` | `f9830b11e6a75c90f8394a5ade56bbd542c140be4c050ba7db6c9ee4d2b7a699` | -| `LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventorySkeletonIsPopulatedAfterLogin::test` | `InventoryFetchTests.InventorySkeletonIsPopulatedAfterLogin` | `` | `LibreMetaverse.Tests/InventoryFetchTests.cs:109` | `Inventory, RequiresLiveServer` | `` | `pending source translation` | `pending` | `ea1508e3c676639f00bb8a4c4c72d2ee668603bfbff40ee0b93d7f4beb607f75` | -| `LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventoryRootContainsFolders::test` | `InventoryFetchTests.InventoryRootContainsFolders` | `` | `LibreMetaverse.Tests/InventoryFetchTests.cs:147` | `Inventory, RequiresLiveServer` | `` | `pending source translation` | `pending` | `71f41c718060622e1fd653e6b0fc9fe65f3cd68cab3d128f494cdbc90f9d2726` | -| `LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventoryFolderContainsItems::test` | `InventoryFetchTests.InventoryFolderContainsItems` | `` | `LibreMetaverse.Tests/InventoryFetchTests.cs:194` | `Inventory, RequiresLiveServer` | `` | `pending source translation` | `pending` | `f0d77649b82d4d7d7778acebd851dd4eb44b76eb687af07bccdd20a1efe96223` | -| `LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventoryItemCanBeFetchedById::test` | `InventoryFetchTests.InventoryItemCanBeFetchedById` | `` | `LibreMetaverse.Tests/InventoryFetchTests.cs:276` | `Inventory, RequiresLiveServer` | `` | `pending source translation` | `pending` | `7fe89086754a673ab69814202b48aab9add30dd63ee98a953bdedd54d6788af2` | -| `LibreMetaverse.Tests/InventoryManagerTests.cs::InventoryManagerTests.EncryptDecrypt_RoundTrip::test` | `InventoryManagerTests.EncryptDecrypt_RoundTrip` | `` | `LibreMetaverse.Tests/InventoryManagerTests.cs:35` | `` | `` | `pending source translation` | `pending` | `7b59c330ffacf1174dd884f369a4e4015e1a212a0e43d7fa8889f7505dd5599d` | -| `LibreMetaverse.Tests/InventoryManagerTests.cs::InventoryManagerTests.ItemCRC_IsDeterministic_AndChangesWhenFieldsChange::test` | `InventoryManagerTests.ItemCRC_IsDeterministic_AndChangesWhenFieldsChange` | `` | `LibreMetaverse.Tests/InventoryManagerTests.cs:45` | `` | `` | `pending source translation` | `pending` | `dbd322778ad7f110abce5f10a0c83ad002ae76f6a114fa795fb90a799f4ff077` | -| `LibreMetaverse.Tests/InventoryManagerTests.cs::InventoryManagerTests.CreateInventoryItem_ReturnsCorrectSubclass::test` | `InventoryManagerTests.CreateInventoryItem_ReturnsCorrectSubclass` | `` | `LibreMetaverse.Tests/InventoryManagerTests.cs:77` | `` | `` | `pending source translation` | `pending` | `219f8c91bc1b3d5b5d3e5b2f2880c5733fd02e6103ccc9c6ecbf8d03328274f6` | -| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.AddAndGetItem::test` | `InventoryTests.AddAndGetItem` | `` | `LibreMetaverse.Tests/InventoryTests.cs:53` | `` | `` | `pending source translation` | `pending` | `24702f0cf9215beee29123ee81dab4a7fe971beb197ecceac9a1761b695bce45` | -| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.UpdateItemParent::test` | `InventoryTests.UpdateItemParent` | `` | `LibreMetaverse.Tests/InventoryTests.cs:76` | `` | `` | `pending source translation` | `pending` | `ea1a73e28fb92b873ee28102e81811d769b5cd815d2e1d756ece6ea635e5c014` | -| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.InventoryNodeModifyTime_SelfLoop::test` | `InventoryTests.InventoryNodeModifyTime_SelfLoop` | `` | `LibreMetaverse.Tests/InventoryTests.cs:98` | `` | `` | `pending source translation` | `pending` | `f8050cc284f7954c1301091ddc1cbf0fa76073806eee7de4f6cb21063591fbf1` | -| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.UpdateNodeFor_SelfLoop::test` | `InventoryTests.UpdateNodeFor_SelfLoop` | `` | `LibreMetaverse.Tests/InventoryTests.cs:109` | `` | `` | `pending source translation` | `pending` | `14f42e5263c465e8534347c5a3195c195e2d90371dbc2f69d36a40362384505c` | -| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.UpdateNodeFor_ComplexSelfLoop::test` | `InventoryTests.UpdateNodeFor_ComplexSelfLoop` | `` | `LibreMetaverse.Tests/InventoryTests.cs:120` | `` | `` | `pending source translation` | `pending` | `a2fc7b29b8a7a7767c42ea9c7fb9628451c88991c3eb1ecbd2ce0952ab0b5700` | -| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.RemoveItem::test` | `InventoryTests.RemoveItem` | `` | `LibreMetaverse.Tests/InventoryTests.cs:136` | `` | `` | `pending source translation` | `pending` | `1e72f9049b9114f0c56e152d84190d31bca7a862f7ad1459624d753beb6818b4` | -| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.SaveAndRestoreAsync::test` | `InventoryTests.SaveAndRestoreAsync` | `` | `LibreMetaverse.Tests/InventoryTests.cs:150` | `` | `` | `pending source translation` | `pending` | `bf23b1c67cc9618713d2d8e6653f0ffbbf4c24d7f2c59c5dd639047f7e0c8156` | -| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.GetNodeOrDefault_ReturnsNullWhenMissing::test` | `InventoryTests.GetNodeOrDefault_ReturnsNullWhenMissing` | `` | `LibreMetaverse.Tests/InventoryTests.cs:175` | `` | `` | `pending source translation` | `pending` | `f5651b5a143470c3ab6ba1f835206a1a55a6218c28242dc12c5d6b5e89519596` | -| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.TryGetValue_Generic::test` | `InventoryTests.TryGetValue_Generic` | `` | `LibreMetaverse.Tests/InventoryTests.cs:182` | `` | `` | `pending source translation` | `pending` | `e6f6d6535af9d011e65cb3c297fe99543f85b64382c47e1756f051d6031886f5` | -| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.RemoveFolderRemovesAllDescendants::test` | `InventoryTests.RemoveFolderRemovesAllDescendants` | `` | `LibreMetaverse.Tests/InventoryTests.cs:196` | `` | `` | `pending source translation` | `pending` | `b537223d271b75c11adfa6d87c1e79bb29366f294657ddf71f236fab0dee009f` | -| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.DescendentCountUpdatesOnAddAndRemove::test` | `InventoryTests.DescendentCountUpdatesOnAddAndRemove` | `` | `LibreMetaverse.Tests/InventoryTests.cs:219` | `` | `` | `pending source translation` | `pending` | `cfe6571887d0e992ff4d69ccbcdfb34012f9bb5d62118201c33d7d66cc9ddfd8` | -| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.MovingItemUpdatesAncestorDescendentCounts::test` | `InventoryTests.MovingItemUpdatesAncestorDescendentCounts` | `` | `LibreMetaverse.Tests/InventoryTests.cs:247` | `` | `` | `pending source translation` | `pending` | `1f4b4189694b9471d48562a434c91a9e455706b83b65bb855c0846388b44c759` | -| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.ConcurrentAddMoveRemoveStress::test` | `InventoryTests.ConcurrentAddMoveRemoveStress` | `` | `LibreMetaverse.Tests/InventoryTests.cs:283` | `` | `` | `pending source translation` | `pending` | `0b76b2fb62a6300e02a02859772f146f107caa77986f4d593e3a4d01966ab4e4` | -| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.ConcurrentLinkAddRemoveStress::test` | `InventoryTests.ConcurrentLinkAddRemoveStress` | `` | `LibreMetaverse.Tests/InventoryTests.cs:373` | `` | `` | `pending source translation` | `pending` | `eef3b4eb300427800757dc6cac2dbd9202ed1cf1aac42565b3c26eb11e71bbf1` | -| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.LinkIndexUpdateOnAssetChange::test` | `InventoryTests.LinkIndexUpdateOnAssetChange` | `` | `LibreMetaverse.Tests/InventoryTests.cs:439` | `` | `` | `pending source translation` | `pending` | `d3e0066e06ab1c48520e5e0bbba8069b74f1a38d37e24d914392406b41b2ea0c` | -| `LibreMetaverse.Tests/LibraryInventoryTests.cs::LibraryInventoryTests.LibraryFoldersArePopulatedAfterLogin::test` | `LibraryInventoryTests.LibraryFoldersArePopulatedAfterLogin` | `` | `LibreMetaverse.Tests/LibraryInventoryTests.cs:109` | `Inventory, RequiresLiveServer` | `` | `pending source translation` | `pending` | `dc865c88bb514bb71157a451e938b5ae3e3adde208d267d6a7196706dc9cfda2` | -| `LibreMetaverse.Tests/LibraryInventoryTests.cs::LibraryInventoryTests.LibraryFolderItemsCanBeFetched::test` | `LibraryInventoryTests.LibraryFolderItemsCanBeFetched` | `` | `LibreMetaverse.Tests/LibraryInventoryTests.cs:146` | `Inventory, RequiresLiveServer` | `` | `pending source translation` | `pending` | `475561d29dd25aba52d94f8374fe9083fea2ed7af44dfb6d25b55ce487b080ab` | -| `LibreMetaverse.Tests/LibraryInventoryTests.cs::LibraryInventoryTests.LibrarySubFolderContainsItems::test` | `LibraryInventoryTests.LibrarySubFolderContainsItems` | `` | `LibreMetaverse.Tests/LibraryInventoryTests.cs:219` | `Inventory, RequiresLiveServer` | `` | `pending source translation` | `pending` | `a6d02cbcb7fde8248419f1cf7355c3d37f06e8b365dc483fad935dd9a0ac5909` | +| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseLinksFromEmbedded_ObjectAsset_ResultsInAttachmentInventoryTypeAndParsesFields::test` | `InventoryAISClientTests.ParseLinksFromEmbedded_ObjectAsset_ResultsInAttachmentInventoryTypeAndParsesFields` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:37` | `` | `` | `tests/compat/tests/inventory_ais_semantics.rs:129 (`parse_links_object_asset_results_in_attachment_type_and_parses_fields`)` | `translated` | `3ae365ed34f12d036dcd44c94f8568d163cfeec2a58b4975975b77b418770131` | +| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseItemsFromEmbedded_ItemsKey_ParsesConcreteItems::test` | `InventoryAISClientTests.ParseItemsFromEmbedded_ItemsKey_ParsesConcreteItems` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:82` | `` | `` | `tests/compat/tests/inventory_ais_semantics.rs:160 (`parse_items_items_key_parses_concrete_items`)` | `translated` | `d9e7c64106639071e1ec6ada7346bfa050a31183becaac79efefcd4755fe2855` | +| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseLinksFromEmbedded_MeshAsset_TreatedAsAttachment::test` | `InventoryAISClientTests.ParseLinksFromEmbedded_MeshAsset_TreatedAsAttachment` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:122` | `` | `` | `tests/compat/tests/inventory_ais_semantics.rs:182 (`parse_links_mesh_asset_treated_as_attachment`)` | `translated` | `f807110d577c654128dd8d42e618c610c260c4f3367cf2795776564409f876a2` | +| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseItemsFromEmbedded_TopLevelItemsKey_WorksWithoutEmbedded::test` | `InventoryAISClientTests.ParseItemsFromEmbedded_TopLevelItemsKey_WorksWithoutEmbedded` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:160` | `` | `` | `tests/compat/tests/inventory_ais_semantics.rs:211 (`parse_items_top_level_items_key_works_without_embedded`)` | `translated` | `9c8f2090d59ff5e75e75381a7283c501cadd56e591991cdead23c504738a0a6d` | +| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseLinksFromEmbedded_TopLevelLinksKey_WorksWithoutEmbedded::test` | `InventoryAISClientTests.ParseLinksFromEmbedded_TopLevelLinksKey_WorksWithoutEmbedded` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:193` | `` | `` | `tests/compat/tests/inventory_ais_semantics.rs:226 (`parse_links_top_level_links_key_works_without_embedded`)` | `translated` | `29afd2bd6a554959d6cfa99b632672d56bbb5bcad2ccbaf8caf4773a514f5d79` | +| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseItemsFromEmbedded_NullOrEmpty_ReturnsEmptyList::test` | `InventoryAISClientTests.ParseItemsFromEmbedded_NullOrEmpty_ReturnsEmptyList` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:227` | `` | `` | `tests/compat/tests/inventory_ais_semantics.rs:248 (`parse_items_null_or_empty_returns_empty_list`)` | `translated` | `198fb619bbf396a4b1a7b4b85b7fba8808ae127e2575b2b84d21f01a2bdbc445` | +| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseEmbedded_CombinesItemsAndLinks::test` | `InventoryAISClientTests.ParseEmbedded_CombinesItemsAndLinks` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:236` | `` | `` | `tests/compat/tests/inventory_ais_semantics.rs:264 (`parse_embedded_combines_items_and_links`)` | `translated` | `f2ebf4638c9aef3c846dc182d97d80c95118799428cf8c2bba86163e33196846` | +| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.MoveCategoryLinksAsync_AlwaysReturnsFalse::test` | `InventoryAISClientTests.MoveCategoryLinksAsync_AlwaysReturnsFalse` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:259` | `` | `` | `tests/compat/tests/inventory_ais_semantics.rs:284 (`move_category_links_always_returns_false`)` | `translated` | `bebad05897efc0da2f959b4f567faa3ffee950520d13265ecbab1dee978f4886` | +| `LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.MoveCategoryLinksAsync_ReturnsCompletedTask::test` | `InventoryAISClientTests.MoveCategoryLinksAsync_ReturnsCompletedTask` | `` | `LibreMetaverse.Tests/InventoryAISClientTests.cs:268` | `` | `` | `tests/compat/tests/inventory_ais_semantics.rs:292 (`move_category_links_returns_completed_future`)` | `translated` | `f9830b11e6a75c90f8394a5ade56bbd542c140be4c050ba7db6c9ee4d2b7a699` | +| `LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventorySkeletonIsPopulatedAfterLogin::test` | `InventoryFetchTests.InventorySkeletonIsPopulatedAfterLogin` | `` | `LibreMetaverse.Tests/InventoryFetchTests.cs:109` | `Inventory, RequiresLiveServer` | `` | `tests/compat/tests/inventory_live_semantics.rs:88 (`inventory_skeleton_is_populated_after_login`)` | `ignored-live` | `ea1508e3c676639f00bb8a4c4c72d2ee668603bfbff40ee0b93d7f4beb607f75` | +| `LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventoryRootContainsFolders::test` | `InventoryFetchTests.InventoryRootContainsFolders` | `` | `LibreMetaverse.Tests/InventoryFetchTests.cs:147` | `Inventory, RequiresLiveServer` | `` | `tests/compat/tests/inventory_live_semantics.rs:109 (`inventory_root_contains_folders`)` | `ignored-live` | `71f41c718060622e1fd653e6b0fc9fe65f3cd68cab3d128f494cdbc90f9d2726` | +| `LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventoryFolderContainsItems::test` | `InventoryFetchTests.InventoryFolderContainsItems` | `` | `LibreMetaverse.Tests/InventoryFetchTests.cs:194` | `Inventory, RequiresLiveServer` | `` | `tests/compat/tests/inventory_live_semantics.rs:143 (`inventory_folder_contains_items`)` | `ignored-live` | `f0d77649b82d4d7d7778acebd851dd4eb44b76eb687af07bccdd20a1efe96223` | +| `LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventoryItemCanBeFetchedById::test` | `InventoryFetchTests.InventoryItemCanBeFetchedById` | `` | `LibreMetaverse.Tests/InventoryFetchTests.cs:276` | `Inventory, RequiresLiveServer` | `` | `tests/compat/tests/inventory_live_semantics.rs:196 (`inventory_item_can_be_fetched_by_id`)` | `ignored-live` | `7fe89086754a673ab69814202b48aab9add30dd63ee98a953bdedd54d6788af2` | +| `LibreMetaverse.Tests/InventoryManagerTests.cs::InventoryManagerTests.EncryptDecrypt_RoundTrip::test` | `InventoryManagerTests.EncryptDecrypt_RoundTrip` | `` | `LibreMetaverse.Tests/InventoryManagerTests.cs:35` | `` | `` | `tests/compat/tests/inventory_manager_semantics.rs:25 (`encrypt_decrypt_round_trip`)` | `translated` | `7b59c330ffacf1174dd884f369a4e4015e1a212a0e43d7fa8889f7505dd5599d` | +| `LibreMetaverse.Tests/InventoryManagerTests.cs::InventoryManagerTests.ItemCRC_IsDeterministic_AndChangesWhenFieldsChange::test` | `InventoryManagerTests.ItemCRC_IsDeterministic_AndChangesWhenFieldsChange` | `` | `LibreMetaverse.Tests/InventoryManagerTests.cs:45` | `` | `` | `tests/compat/tests/inventory_manager_semantics.rs:34 (`item_crc_is_deterministic_and_changes_when_fields_change`)` | `translated` | `dbd322778ad7f110abce5f10a0c83ad002ae76f6a114fa795fb90a799f4ff077` | +| `LibreMetaverse.Tests/InventoryManagerTests.cs::InventoryManagerTests.CreateInventoryItem_ReturnsCorrectSubclass::test` | `InventoryManagerTests.CreateInventoryItem_ReturnsCorrectSubclass` | `` | `LibreMetaverse.Tests/InventoryManagerTests.cs:77` | `` | `` | `tests/compat/tests/inventory_manager_semantics.rs:60 (`create_inventory_item_returns_correct_subclass`)` | `translated` | `219f8c91bc1b3d5b5d3e5b2f2880c5733fd02e6103ccc9c6ecbf8d03328274f6` | +| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.AddAndGetItem::test` | `InventoryTests.AddAndGetItem` | `` | `LibreMetaverse.Tests/InventoryTests.cs:53` | `` | `` | `tests/compat/tests/inventory_store_semantics.rs:72 (`add_and_get_item`)` | `translated` | `24702f0cf9215beee29123ee81dab4a7fe971beb197ecceac9a1761b695bce45` | +| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.UpdateItemParent::test` | `InventoryTests.UpdateItemParent` | `` | `LibreMetaverse.Tests/InventoryTests.cs:76` | `` | `` | `tests/compat/tests/inventory_store_semantics.rs:103 (`update_item_parent`)` | `translated` | `ea1a73e28fb92b873ee28102e81811d769b5cd815d2e1d756ece6ea635e5c014` | +| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.InventoryNodeModifyTime_SelfLoop::test` | `InventoryTests.InventoryNodeModifyTime_SelfLoop` | `` | `LibreMetaverse.Tests/InventoryTests.cs:98` | `` | `` | `tests/compat/tests/inventory_store_semantics.rs:141 (`inventory_node_modify_time_self_loop`)` | `translated` | `f8050cc284f7954c1301091ddc1cbf0fa76073806eee7de4f6cb21063591fbf1` | +| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.UpdateNodeFor_SelfLoop::test` | `InventoryTests.UpdateNodeFor_SelfLoop` | `` | `LibreMetaverse.Tests/InventoryTests.cs:109` | `` | `` | `tests/compat/tests/inventory_store_semantics.rs:152 (`update_node_for_self_loop`)` | `translated` | `14f42e5263c465e8534347c5a3195c195e2d90371dbc2f69d36a40362384505c` | +| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.UpdateNodeFor_ComplexSelfLoop::test` | `InventoryTests.UpdateNodeFor_ComplexSelfLoop` | `` | `LibreMetaverse.Tests/InventoryTests.cs:120` | `` | `` | `tests/compat/tests/inventory_store_semantics.rs:164 (`update_node_for_complex_self_loop`)` | `translated` | `a2fc7b29b8a7a7767c42ea9c7fb9628451c88991c3eb1ecbd2ce0952ab0b5700` | +| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.RemoveItem::test` | `InventoryTests.RemoveItem` | `` | `LibreMetaverse.Tests/InventoryTests.cs:136` | `` | `` | `tests/compat/tests/inventory_store_semantics.rs:182 (`remove_item`)` | `translated` | `1e72f9049b9114f0c56e152d84190d31bca7a862f7ad1459624d753beb6818b4` | +| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.SaveAndRestoreAsync::test` | `InventoryTests.SaveAndRestoreAsync` | `` | `LibreMetaverse.Tests/InventoryTests.cs:150` | `` | `` | `tests/compat/tests/inventory_store_semantics.rs:197 (`save_and_restore_async`)` | `translated` | `bf23b1c67cc9618713d2d8e6653f0ffbbf4c24d7f2c59c5dd639047f7e0c8156` | +| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.GetNodeOrDefault_ReturnsNullWhenMissing::test` | `InventoryTests.GetNodeOrDefault_ReturnsNullWhenMissing` | `` | `LibreMetaverse.Tests/InventoryTests.cs:175` | `` | `` | `tests/compat/tests/inventory_store_semantics.rs:227 (`get_node_or_default_returns_null_when_missing`)` | `translated` | `f5651b5a143470c3ab6ba1f835206a1a55a6218c28242dc12c5d6b5e89519596` | +| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.TryGetValue_Generic::test` | `InventoryTests.TryGetValue_Generic` | `` | `LibreMetaverse.Tests/InventoryTests.cs:182` | `` | `` | `tests/compat/tests/inventory_store_semantics.rs:239 (`try_get_value_generic`)` | `translated` | `e6f6d6535af9d011e65cb3c297fe99543f85b64382c47e1756f051d6031886f5` | +| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.RemoveFolderRemovesAllDescendants::test` | `InventoryTests.RemoveFolderRemovesAllDescendants` | `` | `LibreMetaverse.Tests/InventoryTests.cs:196` | `` | `` | `tests/compat/tests/inventory_store_semantics.rs:259 (`remove_folder_removes_all_descendants`)` | `translated` | `b537223d271b75c11adfa6d87c1e79bb29366f294657ddf71f236fab0dee009f` | +| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.DescendentCountUpdatesOnAddAndRemove::test` | `InventoryTests.DescendentCountUpdatesOnAddAndRemove` | `` | `LibreMetaverse.Tests/InventoryTests.cs:219` | `` | `` | `tests/compat/tests/inventory_store_semantics.rs:282 (`descendent_count_updates_on_add_and_remove`)` | `translated` | `cfe6571887d0e992ff4d69ccbcdfb34012f9bb5d62118201c33d7d66cc9ddfd8` | +| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.MovingItemUpdatesAncestorDescendentCounts::test` | `InventoryTests.MovingItemUpdatesAncestorDescendentCounts` | `` | `LibreMetaverse.Tests/InventoryTests.cs:247` | `` | `` | `tests/compat/tests/inventory_store_semantics.rs:311 (`moving_item_updates_ancestor_descendent_counts`)` | `translated` | `1f4b4189694b9471d48562a434c91a9e455706b83b65bb855c0846388b44c759` | +| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.ConcurrentAddMoveRemoveStress::test` | `InventoryTests.ConcurrentAddMoveRemoveStress` | `` | `LibreMetaverse.Tests/InventoryTests.cs:283` | `` | `` | `tests/compat/tests/inventory_store_semantics.rs:357 (`concurrent_add_move_remove_stress`)` | `translated` | `0b76b2fb62a6300e02a02859772f146f107caa77986f4d593e3a4d01966ab4e4` | +| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.ConcurrentLinkAddRemoveStress::test` | `InventoryTests.ConcurrentLinkAddRemoveStress` | `` | `LibreMetaverse.Tests/InventoryTests.cs:373` | `` | `` | `tests/compat/tests/inventory_store_semantics.rs:440 (`concurrent_link_add_remove_stress`)` | `translated` | `eef3b4eb300427800757dc6cac2dbd9202ed1cf1aac42565b3c26eb11e71bbf1` | +| `LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.LinkIndexUpdateOnAssetChange::test` | `InventoryTests.LinkIndexUpdateOnAssetChange` | `` | `LibreMetaverse.Tests/InventoryTests.cs:439` | `` | `` | `tests/compat/tests/inventory_store_semantics.rs:517 (`link_index_updates_on_asset_change`)` | `translated` | `d3e0066e06ab1c48520e5e0bbba8069b74f1a38d37e24d914392406b41b2ea0c` | +| `LibreMetaverse.Tests/LibraryInventoryTests.cs::LibraryInventoryTests.LibraryFoldersArePopulatedAfterLogin::test` | `LibraryInventoryTests.LibraryFoldersArePopulatedAfterLogin` | `` | `LibreMetaverse.Tests/LibraryInventoryTests.cs:109` | `Inventory, RequiresLiveServer` | `` | `tests/compat/tests/inventory_live_semantics.rs:249 (`library_folders_are_populated_after_login`)` | `ignored-live` | `dc865c88bb514bb71157a451e938b5ae3e3adde208d267d6a7196706dc9cfda2` | +| `LibreMetaverse.Tests/LibraryInventoryTests.cs::LibraryInventoryTests.LibraryFolderItemsCanBeFetched::test` | `LibraryInventoryTests.LibraryFolderItemsCanBeFetched` | `` | `LibreMetaverse.Tests/LibraryInventoryTests.cs:146` | `Inventory, RequiresLiveServer` | `` | `tests/compat/tests/inventory_live_semantics.rs:275 (`library_folder_items_can_be_fetched`)` | `ignored-live` | `475561d29dd25aba52d94f8374fe9083fea2ed7af44dfb6d25b55ce487b080ab` | +| `LibreMetaverse.Tests/LibraryInventoryTests.cs::LibraryInventoryTests.LibrarySubFolderContainsItems::test` | `LibraryInventoryTests.LibrarySubFolderContainsItems` | `` | `LibreMetaverse.Tests/LibraryInventoryTests.cs:219` | `Inventory, RequiresLiveServer` | `` | `tests/compat/tests/inventory_live_semantics.rs:309 (`library_sub_folder_contains_items`)` | `ignored-live` | `a6d02cbcb7fde8248419f1cf7355c3d37f06e8b365dc483fad935dd9a0ac5909` | | `LibreMetaverse.Tests/LindenSkeletonTests.cs::LindenSkeletonTests.BuildExpandedJointList_EmptyFilter_ReturnsEmptyList::test` | `LindenSkeletonTests.BuildExpandedJointList_EmptyFilter_ReturnsEmptyList` | `` | `LibreMetaverse.Tests/LindenSkeletonTests.cs:58` | `LindenSkeleton` | `` | `crates/libremetaverse/src/avatar_animesh_semantics.rs:642 (`linden_skeleton_build_expanded_joint_list_empty_filter_returns_empty_list`)` | `translated` | `59857e0c12d374a3063e98311f7d262ca9e4fe3bde43af4698d20a6e6e550a64` | | `LibreMetaverse.Tests/LindenSkeletonTests.cs::LindenSkeletonTests.BuildExpandedJointList_NoBoneChildren_ReturnsEmptyList::test` | `LindenSkeletonTests.BuildExpandedJointList_NoBoneChildren_ReturnsEmptyList` | `` | `LibreMetaverse.Tests/LindenSkeletonTests.cs:70` | `LindenSkeleton` | `` | `crates/libremetaverse/src/avatar_animesh_semantics.rs:655 (`linden_skeleton_build_expanded_joint_list_no_bone_children_returns_empty_list`)` | `translated` | `c744ad17de5b5dd0e594973181307ddaba0d9b0ecf0ce3ff258e108de45e82be` | | `LibreMetaverse.Tests/LindenSkeletonTests.cs::LindenSkeletonTests.BuildExpandedJointList_LinearChain_AllInFilter_ProducesCorrectSequence::test` | `LindenSkeletonTests.BuildExpandedJointList_LinearChain_AllInFilter_ProducesCorrectSequence` | `` | `LibreMetaverse.Tests/LindenSkeletonTests.cs:80` | `LindenSkeleton` | `` | `crates/libremetaverse/src/avatar_animesh_semantics.rs:669 (`linden_skeleton_build_expanded_joint_list_linear_chain_all_in_filter`)` | `translated` | `c2fa9fc02df25cb6eb083746a100abf551d208ea036cadb26a1e94649d33e560` | @@ -425,14 +425,14 @@ Reviewed Rust tests live outside `generated_parity.rs` and carry a `parity-case` | `LibreMetaverse.Tests/MessageTests.cs::MessageTests.ReflectionPerformanceDirLandReply::test` | `MessageTests.ReflectionPerformanceDirLandReply` | `` | `LibreMetaverse.Tests/MessageTests.cs:1291` | `Benchmark` | `` | `tests/compat/tests/wire_semantics.rs:1515 (`reflection_performance_dir_land_reply`)` | `benchmark` | `d4a40f5d6a5f3e66d69591429bea0cfc95d313afc9a7a9ee5e9289c69be069d6` | | `LibreMetaverse.Tests/MessageTests.cs::MessageTests.ReflectionPerformanceDirLandReply2::test` | `MessageTests.ReflectionPerformanceDirLandReply2` | `` | `LibreMetaverse.Tests/MessageTests.cs:1354` | `Benchmark` | `` | `tests/compat/tests/wire_semantics.rs:1573 (`reflection_performance_dir_land_reply_two`)` | `benchmark` | `e52dacbdf3f4540553fe9f751334631a2d8440bdffcf6822d2629585176626cc` | | `LibreMetaverse.Tests/MessageTests.cs::MessageTests.ReflectionPerformanceParcelProperties::test` | `MessageTests.ReflectionPerformanceParcelProperties` | `` | `LibreMetaverse.Tests/MessageTests.cs:1420` | `Benchmark` | `` | `tests/compat/tests/wire_semantics.rs:1732 (`reflection_performance_parcel_properties`)` | `benchmark` | `914e6015a8abc1b5c1b58a219ef4f67258f793cac02c903e518758deaaddf8a4` | -| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.IsLink_TextureItemWithLinkAssetType_ReturnsTrue::test` | `MisclassifiedLinkRegressionTests.IsLink_TextureItemWithLinkAssetType_ReturnsTrue` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:75` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:22 (`is_link_texture_item_with_link_asset_type_returns_true`)` | `translated` | `b85452466c0fdc47a44cc08166f93a660bbf466b0e2205910c1ea84fee22896c` | -| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.IsLink_NormalTexture_ReturnsFalse::test` | `MisclassifiedLinkRegressionTests.IsLink_NormalTexture_ReturnsFalse` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:90` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:29 (`is_link_normal_texture_returns_false`)` | `translated` | `8c08505d6e89c4395115dbb060529419755aa1a81ca8889804ea00e6f94bf534` | -| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.ResolvedItemID_OnMisclassifiedTextureLink_ReturnsAssetUUID::test` | `MisclassifiedLinkRegressionTests.ResolvedItemID_OnMisclassifiedTextureLink_ReturnsAssetUUID` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:103` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:38 (`resolved_item_id_on_misclassified_texture_link_returns_asset_uuid`)` | `translated` | `cad5b5fb10523254ff19b7842b0e48984bc75182a26bc897f165a43770bb47f4` | -| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.InventoryStore_Contains_FindsTargetByResolvedItemID::test` | `MisclassifiedLinkRegressionTests.InventoryStore_Contains_FindsTargetByResolvedItemID` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:120` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:46 (`inventory_store_contains_finds_target_by_resolved_item_id`)` | `translated` | `3c1f8596462c3a9e229c84ea44e44728bf175e1a0e8213ae92d1b02b08320b0b` | -| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.InventoryStore_Indexer_ReturnsWearable_WhenTargetIsWearable::test` | `MisclassifiedLinkRegressionTests.InventoryStore_Indexer_ReturnsWearable_WhenTargetIsWearable` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:142` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:64 (`inventory_store_indexer_returns_wearable_when_target_is_wearable`)` | `translated` | `c7ce0b860743cfa5225de4322c8d7bf95094296b1dd2d07fd273bbd4e81a9fcf` | -| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.InventoryStore_Indexer_ReturnsAttachment_WhenTargetIsAttachment::test` | `MisclassifiedLinkRegressionTests.InventoryStore_Indexer_ReturnsAttachment_WhenTargetIsAttachment` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:168` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:86 (`inventory_store_indexer_returns_attachment_when_target_is_attachment`)` | `translated` | `f58debff8f66b7b417215eb6879f96935647b66cc619fdb00e6815c9ce5e7c67` | -| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.InventoryStore_Indexer_ReturnsObject_WhenTargetIsObject::test` | `MisclassifiedLinkRegressionTests.InventoryStore_Indexer_ReturnsObject_WhenTargetIsObject` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:192` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:110 (`inventory_store_indexer_returns_object_when_target_is_object`)` | `translated` | `b8137c994019103977b0b85d8c148e12ae8f9051334ca487db7c88bcbe707d40` | -| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.InventoryStore_NotContains_WhenTargetAbsent::test` | `MisclassifiedLinkRegressionTests.InventoryStore_NotContains_WhenTargetAbsent` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:216` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:132 (`inventory_store_not_contains_when_target_absent`)` | `translated` | `6900e220c33ec135d02c55e047c7052a095d5dd9d71da4a857ae70bc151c472b` | +| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.IsLink_TextureItemWithLinkAssetType_ReturnsTrue::test` | `MisclassifiedLinkRegressionTests.IsLink_TextureItemWithLinkAssetType_ReturnsTrue` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:75` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:26 (`is_link_texture_item_with_link_asset_type_returns_true`)` | `translated` | `b85452466c0fdc47a44cc08166f93a660bbf466b0e2205910c1ea84fee22896c` | +| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.IsLink_NormalTexture_ReturnsFalse::test` | `MisclassifiedLinkRegressionTests.IsLink_NormalTexture_ReturnsFalse` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:90` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:33 (`is_link_normal_texture_returns_false`)` | `translated` | `8c08505d6e89c4395115dbb060529419755aa1a81ca8889804ea00e6f94bf534` | +| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.ResolvedItemID_OnMisclassifiedTextureLink_ReturnsAssetUUID::test` | `MisclassifiedLinkRegressionTests.ResolvedItemID_OnMisclassifiedTextureLink_ReturnsAssetUUID` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:103` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:42 (`resolved_item_id_on_misclassified_texture_link_returns_asset_uuid`)` | `translated` | `cad5b5fb10523254ff19b7842b0e48984bc75182a26bc897f165a43770bb47f4` | +| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.InventoryStore_Contains_FindsTargetByResolvedItemID::test` | `MisclassifiedLinkRegressionTests.InventoryStore_Contains_FindsTargetByResolvedItemID` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:120` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:50 (`inventory_store_contains_finds_target_by_resolved_item_id`)` | `translated` | `3c1f8596462c3a9e229c84ea44e44728bf175e1a0e8213ae92d1b02b08320b0b` | +| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.InventoryStore_Indexer_ReturnsWearable_WhenTargetIsWearable::test` | `MisclassifiedLinkRegressionTests.InventoryStore_Indexer_ReturnsWearable_WhenTargetIsWearable` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:142` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:68 (`inventory_store_indexer_returns_wearable_when_target_is_wearable`)` | `translated` | `c7ce0b860743cfa5225de4322c8d7bf95094296b1dd2d07fd273bbd4e81a9fcf` | +| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.InventoryStore_Indexer_ReturnsAttachment_WhenTargetIsAttachment::test` | `MisclassifiedLinkRegressionTests.InventoryStore_Indexer_ReturnsAttachment_WhenTargetIsAttachment` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:168` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:90 (`inventory_store_indexer_returns_attachment_when_target_is_attachment`)` | `translated` | `f58debff8f66b7b417215eb6879f96935647b66cc619fdb00e6815c9ce5e7c67` | +| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.InventoryStore_Indexer_ReturnsObject_WhenTargetIsObject::test` | `MisclassifiedLinkRegressionTests.InventoryStore_Indexer_ReturnsObject_WhenTargetIsObject` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:192` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:114 (`inventory_store_indexer_returns_object_when_target_is_object`)` | `translated` | `b8137c994019103977b0b85d8c148e12ae8f9051334ca487db7c88bcbe707d40` | +| `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs::MisclassifiedLinkRegressionTests.InventoryStore_NotContains_WhenTargetAbsent::test` | `MisclassifiedLinkRegressionTests.InventoryStore_NotContains_WhenTargetAbsent` | `` | `LibreMetaverse.Tests/MisclassifiedLinkRegressionTests.cs:216` | `Inventory` | `` | `tests/compat/tests/misclassified_link_semantics.rs:136 (`inventory_store_not_contains_when_target_absent`)` | `translated` | `6900e220c33ec135d02c55e047c7052a095d5dd9d71da4a857ae70bc151c472b` | | `LibreMetaverse.Tests/NetworkTests.cs::NetworkTests.DetectObjects::test` | `NetworkTests.DetectObjects` | `` | `LibreMetaverse.Tests/NetworkTests.cs:121` | `Network, RequiresLiveServer` | `` | `tests/compat/tests/network_semantics.rs:409 (`detect_objects_live`)` | `ignored-live` | `8b72f1ca30feda2fad0812faf3a2f83d691d3cca9268054b3cc3bf89ad786e87` | | `LibreMetaverse.Tests/NetworkTests.cs::NetworkTests.CapsQueue::test` | `NetworkTests.CapsQueue` | `` | `LibreMetaverse.Tests/NetworkTests.cs:188` | `Network, RequiresLiveServer` | `` | `tests/compat/tests/network_semantics.rs:488 (`caps_queue_live`)` | `ignored-live` | `cd5af4e7d69df3e938540711877d167fe28efb9af8af7518a62b8f406e46cc18` | | `LibreMetaverse.Tests/NotationLLSDTests.cs::NotationSDTests.HelperFunctions::test` | `NotationSDTests.HelperFunctions` | `` | `LibreMetaverse.Tests/NotationLLSDTests.cs:53` | `` | `` | `tests/compat/tests/structured_data.rs:622 (`notation_helper_functions`)` | `translated` | `a521ca5407ed3afd1d59f5b65a283bcebe9d34b4c384d68c5fc674b3a1eeb9df` | @@ -1129,10 +1129,10 @@ Reviewed Rust tests live outside `generated_parity.rs` and carry a `parity-case` | `LibreMetaverse.Tests/RegionScheduleTests.cs::RegionScheduleTests.SetRegionRestartScheduleAsync_EmptyDaysClearsSchedule::test` | `RegionScheduleTests.SetRegionRestartScheduleAsync_EmptyDaysClearsSchedule` | `` | `LibreMetaverse.Tests/RegionScheduleTests.cs:157` | `Estate` | `LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs` | `pending source translation` | `pending` | `57ef3c0f8d9eeac58a7d1b3e7dbc44413016f39303d304cacd3071bd2c55f320` | | `LibreMetaverse.Tests/RegionScheduleTests.cs::RegionScheduleTests.SetRegionRestartScheduleAsync_NoCapability_ReturnsFalseWithoutRequest::test` | `RegionScheduleTests.SetRegionRestartScheduleAsync_NoCapability_ReturnsFalseWithoutRequest` | `` | `LibreMetaverse.Tests/RegionScheduleTests.cs:177` | `Estate` | `LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs` | `pending source translation` | `pending` | `be03507fe574b9f7c7174c39af44b7b693e1b7a496845db46451ef09bf9db206` | | `LibreMetaverse.Tests/RegionScheduleTests.cs::RegionScheduleTests.SetRegionRestartScheduleAsync_NonSuccessStatus_ReturnsFalse::test` | `RegionScheduleTests.SetRegionRestartScheduleAsync_NonSuccessStatus_ReturnsFalse` | `` | `LibreMetaverse.Tests/RegionScheduleTests.cs:195` | `Estate` | `LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs` | `pending source translation` | `pending` | `16c8988d7aa15ea9f58deaa2e3f416b6115978e23073fd99749843f4f410dca4` | -| `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_CapAvailable_ReturnsContentsFolderAndDecryptsShadowId::test` | `RequestTaskInventoryCapTests.GetTaskInventoryAsync_CapAvailable_ReturnsContentsFolderAndDecryptsShadowId` | `` | `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs:73` | `` | `LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs` | `pending source translation` | `pending` | `c9bfc5526260f9e2dffa8a22938999911fdd80be4b2b6d6487bf6171f8dbb56a` | -| `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_PlainAssetId_ParsesWithoutDecryption::test` | `RequestTaskInventoryCapTests.GetTaskInventoryAsync_PlainAssetId_ParsesWithoutDecryption` | `` | `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs:115` | `` | `LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs` | `pending source translation` | `pending` | `95f39928dae61bca86b7d0a0702307db6c5fdc754e51f73a24bd5ee131e6de3f` | -| `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_NonSuccessStatus_ReturnsContentsFolderOnly::test` | `RequestTaskInventoryCapTests.GetTaskInventoryAsync_NonSuccessStatus_ReturnsContentsFolderOnly` | `` | `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs:143` | `` | `LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs` | `pending source translation` | `pending` | `b8a25891064e470ac8d77ecd8a4847cf773b043de5ebeae275a9dd6669518585` | -| `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_NoCapability_DoesNotMakeHttpRequest::test` | `RequestTaskInventoryCapTests.GetTaskInventoryAsync_NoCapability_DoesNotMakeHttpRequest` | `` | `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs:164` | `` | `LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs` | `pending source translation` | `pending` | `c0c43ebcf781fb81b1fef7ce1dd2774e350d92ef882f49876f1a16d23a338592` | +| `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_CapAvailable_ReturnsContentsFolderAndDecryptsShadowId::test` | `RequestTaskInventoryCapTests.GetTaskInventoryAsync_CapAvailable_ReturnsContentsFolderAndDecryptsShadowId` | `` | `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs:73` | `` | `LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs` | `tests/compat/tests/task_inventory_semantics.rs:138 (`cap_available_returns_contents_folder_and_decrypts_shadow_id`)` | `translated` | `c9bfc5526260f9e2dffa8a22938999911fdd80be4b2b6d6487bf6171f8dbb56a` | +| `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_PlainAssetId_ParsesWithoutDecryption::test` | `RequestTaskInventoryCapTests.GetTaskInventoryAsync_PlainAssetId_ParsesWithoutDecryption` | `` | `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs:115` | `` | `LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs` | `tests/compat/tests/task_inventory_semantics.rs:176 (`plain_asset_id_parses_without_decryption`)` | `translated` | `95f39928dae61bca86b7d0a0702307db6c5fdc754e51f73a24bd5ee131e6de3f` | +| `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_NonSuccessStatus_ReturnsContentsFolderOnly::test` | `RequestTaskInventoryCapTests.GetTaskInventoryAsync_NonSuccessStatus_ReturnsContentsFolderOnly` | `` | `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs:143` | `` | `LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs` | `tests/compat/tests/task_inventory_semantics.rs:196 (`non_success_status_returns_contents_folder_only`)` | `translated` | `b8a25891064e470ac8d77ecd8a4847cf773b043de5ebeae275a9dd6669518585` | +| `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_NoCapability_DoesNotMakeHttpRequest::test` | `RequestTaskInventoryCapTests.GetTaskInventoryAsync_NoCapability_DoesNotMakeHttpRequest` | `` | `LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs:164` | `` | `LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs` | `tests/compat/tests/task_inventory_semantics.rs:211 (`no_capability_does_not_make_http_request`)` | `translated` | `c0c43ebcf781fb81b1fef7ce1dd2774e350d92ef882f49876f1a16d23a338592` | | `LibreMetaverse.Tests/SendPostcardTests.cs::SendPostcardTests.SendPostcardAsync_HappyPath_PostsMetadataThenImageAndReturnsTrue::test` | `SendPostcardTests.SendPostcardAsync_HappyPath_PostsMetadataThenImageAndReturnsTrue` | `` | `LibreMetaverse.Tests/SendPostcardTests.cs:68` | `` | `LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs` | `tests/compat/tests/asset_capability_semantics.rs:548 (`postcard_posts_metadata_then_image`)` | `translated` | `2e02bd16ef1431c2ca82d7804dffc764be0175cff5daff8c38d0a61641439e06` | | `LibreMetaverse.Tests/SendPostcardTests.cs::SendPostcardTests.SendPostcardAsync_UploaderMissingFromResponse_ReturnsFalseWithoutSecondRequest::test` | `SendPostcardTests.SendPostcardAsync_UploaderMissingFromResponse_ReturnsFalseWithoutSecondRequest` | `` | `LibreMetaverse.Tests/SendPostcardTests.cs:100` | `` | `LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs` | `tests/compat/tests/asset_capability_semantics.rs:586 (`postcard_missing_uploader_returns_false_after_one_request`)` | `translated` | `2f9498d57d7a512399f9b108765e6e8da8e4c937402f9671d580c66332630432` | | `LibreMetaverse.Tests/SendPostcardTests.cs::SendPostcardTests.SendPostcardAsync_UploadDoesNotComplete_ReturnsFalse::test` | `SendPostcardTests.SendPostcardAsync_UploadDoesNotComplete_ReturnsFalse` | `` | `LibreMetaverse.Tests/SendPostcardTests.cs:112` | `` | `LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs` | `tests/compat/tests/asset_capability_semantics.rs:608 (`postcard_incomplete_upload_returns_false`)` | `translated` | `937b682b406506ec9fba9570852bbf8689450a11cbecb85979af97609b1794f9` | diff --git a/tests/compat/tests/generated_parity.rs b/tests/compat/tests/generated_parity.rs index cbacead..dc119d2 100644 --- a/tests/compat/tests/generated_parity.rs +++ b/tests/compat/tests/generated_parity.rs @@ -2,9 +2,7 @@ // Source: LibreMetaverse 2aa70bb68513b39795da5d13c88f31b86e85a3ba // Pending cases are catalog entries, not fake executable Rust tests. -// pending-parity-case: LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.InventoryAISClient_Null_Throws::test ac92e375efc45c50b37e6c82aea372d605fceb470ce053a025e05ff47a5c7121 // pending-parity-case: LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.GridManager_Null_Throws::test e972a95f334b0f46948cda34c27124c28c44faf4372d0e598d7dc60050b49be4 -// pending-parity-case: LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.InventoryManager_Null_Throws::test 5e7498066c944800354abbc71eea825fe90d0c40a25a6065967a3ebcc9efea74 // pending-parity-case: LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.AppearanceManager_Null_Throws::test a3c872805bc924b5a1a9441d5c9eb61ed6d6e9477e4bb411131359290b144ab4 // pending-parity-case: LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.ObjectManager_Null_Throws::test 8a11feba0edfb35e5dd99f681182e8f5a5cf8a3f738211b45a683a8a2ad45ddb // pending-parity-case: LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.AgentManager_Null_Throws::test d86e41b6cdd03063685aa330c31b9a274c1d400b9a461abf3065fe185fe0bbf0 @@ -28,40 +26,6 @@ // pending-parity-case: LibreMetaverse.Tests/ExperiencePreferencesMessageTests.cs::ExperiencePreferencesMessageTests.ExtractExperiencePermission_Allowed_ReturnsAllow::test cf095ab428713004ebac6e1915a47ae0c03bd2958addbba2a39fd2f0edf51a74 // pending-parity-case: LibreMetaverse.Tests/ExperiencePreferencesMessageTests.cs::ExperiencePreferencesMessageTests.ExtractExperiencePermission_Blocked_ReturnsBlock::test af084d1ab7a11079e6251865e8fd5aecfde38d2df359ebc1e208bc74925935c0 // pending-parity-case: LibreMetaverse.Tests/ExperiencePreferencesMessageTests.cs::ExperiencePreferencesMessageTests.ExtractExperiencePermission_NeitherList_ReturnsForget::test 93204469ecfec2f3f4eb6838c99f6e2baf09bf76a075958d1ed369ba03767158 -// pending-parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseLinksFromEmbedded_ObjectAsset_ResultsInAttachmentInventoryTypeAndParsesFields::test 3ae365ed34f12d036dcd44c94f8568d163cfeec2a58b4975975b77b418770131 -// pending-parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseItemsFromEmbedded_ItemsKey_ParsesConcreteItems::test d9e7c64106639071e1ec6ada7346bfa050a31183becaac79efefcd4755fe2855 -// pending-parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseLinksFromEmbedded_MeshAsset_TreatedAsAttachment::test f807110d577c654128dd8d42e618c610c260c4f3367cf2795776564409f876a2 -// pending-parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseItemsFromEmbedded_TopLevelItemsKey_WorksWithoutEmbedded::test 9c8f2090d59ff5e75e75381a7283c501cadd56e591991cdead23c504738a0a6d -// pending-parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseLinksFromEmbedded_TopLevelLinksKey_WorksWithoutEmbedded::test 29afd2bd6a554959d6cfa99b632672d56bbb5bcad2ccbaf8caf4773a514f5d79 -// pending-parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseItemsFromEmbedded_NullOrEmpty_ReturnsEmptyList::test 198fb619bbf396a4b1a7b4b85b7fba8808ae127e2575b2b84d21f01a2bdbc445 -// pending-parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseEmbedded_CombinesItemsAndLinks::test f2ebf4638c9aef3c846dc182d97d80c95118799428cf8c2bba86163e33196846 -// pending-parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.MoveCategoryLinksAsync_AlwaysReturnsFalse::test bebad05897efc0da2f959b4f567faa3ffee950520d13265ecbab1dee978f4886 -// pending-parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.MoveCategoryLinksAsync_ReturnsCompletedTask::test f9830b11e6a75c90f8394a5ade56bbd542c140be4c050ba7db6c9ee4d2b7a699 -// pending-parity-case: LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventorySkeletonIsPopulatedAfterLogin::test ea1508e3c676639f00bb8a4c4c72d2ee668603bfbff40ee0b93d7f4beb607f75 -// pending-parity-case: LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventoryRootContainsFolders::test 71f41c718060622e1fd653e6b0fc9fe65f3cd68cab3d128f494cdbc90f9d2726 -// pending-parity-case: LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventoryFolderContainsItems::test f0d77649b82d4d7d7778acebd851dd4eb44b76eb687af07bccdd20a1efe96223 -// pending-parity-case: LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventoryItemCanBeFetchedById::test 7fe89086754a673ab69814202b48aab9add30dd63ee98a953bdedd54d6788af2 -// pending-parity-case: LibreMetaverse.Tests/InventoryManagerTests.cs::InventoryManagerTests.EncryptDecrypt_RoundTrip::test 7b59c330ffacf1174dd884f369a4e4015e1a212a0e43d7fa8889f7505dd5599d -// pending-parity-case: LibreMetaverse.Tests/InventoryManagerTests.cs::InventoryManagerTests.ItemCRC_IsDeterministic_AndChangesWhenFieldsChange::test dbd322778ad7f110abce5f10a0c83ad002ae76f6a114fa795fb90a799f4ff077 -// pending-parity-case: LibreMetaverse.Tests/InventoryManagerTests.cs::InventoryManagerTests.CreateInventoryItem_ReturnsCorrectSubclass::test 219f8c91bc1b3d5b5d3e5b2f2880c5733fd02e6103ccc9c6ecbf8d03328274f6 -// pending-parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.AddAndGetItem::test 24702f0cf9215beee29123ee81dab4a7fe971beb197ecceac9a1761b695bce45 -// pending-parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.UpdateItemParent::test ea1a73e28fb92b873ee28102e81811d769b5cd815d2e1d756ece6ea635e5c014 -// pending-parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.InventoryNodeModifyTime_SelfLoop::test f8050cc284f7954c1301091ddc1cbf0fa76073806eee7de4f6cb21063591fbf1 -// pending-parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.UpdateNodeFor_SelfLoop::test 14f42e5263c465e8534347c5a3195c195e2d90371dbc2f69d36a40362384505c -// pending-parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.UpdateNodeFor_ComplexSelfLoop::test a2fc7b29b8a7a7767c42ea9c7fb9628451c88991c3eb1ecbd2ce0952ab0b5700 -// pending-parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.RemoveItem::test 1e72f9049b9114f0c56e152d84190d31bca7a862f7ad1459624d753beb6818b4 -// pending-parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.SaveAndRestoreAsync::test bf23b1c67cc9618713d2d8e6653f0ffbbf4c24d7f2c59c5dd639047f7e0c8156 -// pending-parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.GetNodeOrDefault_ReturnsNullWhenMissing::test f5651b5a143470c3ab6ba1f835206a1a55a6218c28242dc12c5d6b5e89519596 -// pending-parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.TryGetValue_Generic::test e6f6d6535af9d011e65cb3c297fe99543f85b64382c47e1756f051d6031886f5 -// pending-parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.RemoveFolderRemovesAllDescendants::test b537223d271b75c11adfa6d87c1e79bb29366f294657ddf71f236fab0dee009f -// pending-parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.DescendentCountUpdatesOnAddAndRemove::test cfe6571887d0e992ff4d69ccbcdfb34012f9bb5d62118201c33d7d66cc9ddfd8 -// pending-parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.MovingItemUpdatesAncestorDescendentCounts::test 1f4b4189694b9471d48562a434c91a9e455706b83b65bb855c0846388b44c759 -// pending-parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.ConcurrentAddMoveRemoveStress::test 0b76b2fb62a6300e02a02859772f146f107caa77986f4d593e3a4d01966ab4e4 -// pending-parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.ConcurrentLinkAddRemoveStress::test eef3b4eb300427800757dc6cac2dbd9202ed1cf1aac42565b3c26eb11e71bbf1 -// pending-parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.LinkIndexUpdateOnAssetChange::test d3e0066e06ab1c48520e5e0bbba8069b74f1a38d37e24d914392406b41b2ea0c -// pending-parity-case: LibreMetaverse.Tests/LibraryInventoryTests.cs::LibraryInventoryTests.LibraryFoldersArePopulatedAfterLogin::test dc865c88bb514bb71157a451e938b5ae3e3adde208d267d6a7196706dc9cfda2 -// pending-parity-case: LibreMetaverse.Tests/LibraryInventoryTests.cs::LibraryInventoryTests.LibraryFolderItemsCanBeFetched::test 475561d29dd25aba52d94f8374fe9083fea2ed7af44dfb6d25b55ce487b080ab -// pending-parity-case: LibreMetaverse.Tests/LibraryInventoryTests.cs::LibraryInventoryTests.LibrarySubFolderContainsItems::test a6d02cbcb7fde8248419f1cf7355c3d37f06e8b365dc483fad935dd9a0ac5909 // pending-parity-case: LibreMetaverse.Tests/MarketplaceFolderClassifierTests.cs::MarketplaceFolderClassifierTests.GetRole_ListingsRootFolder_ReturnsListingsRoot::test a3c21e19f21924bffbbafe1199a4b942b545bdb278c3362b2a1ec98b35d672cf // pending-parity-case: LibreMetaverse.Tests/MarketplaceFolderClassifierTests.cs::MarketplaceFolderClassifierTests.GetRole_ListingFolder_ReturnsListing::test c08d860a4506254d9ac831e91894f2fc34d840c100468ee7e39b505690302368 // pending-parity-case: LibreMetaverse.Tests/MarketplaceFolderClassifierTests.cs::MarketplaceFolderClassifierTests.GetRole_VersionFolder_ReturnsVersion::test 90d792d6858c6a253b9ddf80d3f5e7244570490fa4ef68c1914b342db05c7aa2 @@ -769,10 +733,6 @@ // pending-parity-case: LibreMetaverse.Tests/RegionScheduleTests.cs::RegionScheduleTests.SetRegionRestartScheduleAsync_EmptyDaysClearsSchedule::test 57ef3c0f8d9eeac58a7d1b3e7dbc44413016f39303d304cacd3071bd2c55f320 // pending-parity-case: LibreMetaverse.Tests/RegionScheduleTests.cs::RegionScheduleTests.SetRegionRestartScheduleAsync_NoCapability_ReturnsFalseWithoutRequest::test be03507fe574b9f7c7174c39af44b7b693e1b7a496845db46451ef09bf9db206 // pending-parity-case: LibreMetaverse.Tests/RegionScheduleTests.cs::RegionScheduleTests.SetRegionRestartScheduleAsync_NonSuccessStatus_ReturnsFalse::test 16c8988d7aa15ea9f58deaa2e3f416b6115978e23073fd99749843f4f410dca4 -// pending-parity-case: LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_CapAvailable_ReturnsContentsFolderAndDecryptsShadowId::test c9bfc5526260f9e2dffa8a22938999911fdd80be4b2b6d6487bf6171f8dbb56a -// pending-parity-case: LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_PlainAssetId_ParsesWithoutDecryption::test 95f39928dae61bca86b7d0a0702307db6c5fdc754e51f73a24bd5ee131e6de3f -// pending-parity-case: LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_NonSuccessStatus_ReturnsContentsFolderOnly::test b8a25891064e470ac8d77ecd8a4847cf773b043de5ebeae275a9dd6669518585 -// pending-parity-case: LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_NoCapability_DoesNotMakeHttpRequest::test c0c43ebcf781fb81b1fef7ce1dd2774e350d92ef882f49876f1a16d23a338592 // pending-parity-case: LibreMetaverse.Tests/SimConsoleTests.cs::SimConsoleTests.SendSimConsoleCommandAsync_IgnoresPostBody_UsesSimConsoleResponseEvent::test df6eb48241f71c34074be66869c9ae1d5980186583259568728261b5eedd7c48 // pending-parity-case: LibreMetaverse.Tests/SimConsoleTests.cs::SimConsoleTests.SendSimConsoleCommandAsync_NoResponseEvent_ReturnsNullAfterTimeout::test 2ac5a6c96f3acec341056387d727288fd3661565bd2a7c385078602efe8661da // pending-parity-case: LibreMetaverse.Tests/SimConsoleTests.cs::SimConsoleTests.SimConsoleResponseMessage_Deserialize_ReadsBodyField::test 4d367bc3fd012d1579847fd9837bf883c5ea95452776a086bbf856899d7c2099 diff --git a/tests/compat/tests/inventory_ais_semantics.rs b/tests/compat/tests/inventory_ais_semantics.rs new file mode 100644 index 0000000..9e4467c --- /dev/null +++ b/tests/compat/tests/inventory_ais_semantics.rs @@ -0,0 +1,302 @@ +// Exact Rust translations of LibreMetaverse.Tests/ConstructorNullArgumentTests.cs and +// LibreMetaverse.Tests/InventoryAISClientTests.cs inventory-owned cases. +// Source SHA-256: 28deea0bf4d9353a2424842c6184abab8fe82746ceb12e093912728a247f21bc +// Source SHA-256: 6de18630ff0da2612721a9d4e28b5fdee5845c8d9477d322a8d608508762e1ff + +use libremetaverse::{Error, GridClient, InventoryAISClient}; +use libremetaverse_compat_tests::block_on; +use libremetaverse_structured_data::OSD; +use libremetaverse_types::{AssetType, InventoryType, SaleType, UUID}; +use std::collections::HashMap; +use std::future::Future; +use std::sync::Arc; +use std::task::{Context, Poll, Waker}; +use std::time::{SystemTime, UNIX_EPOCH}; + +fn uuid() -> UUID { + UUID::random().expect("UUID Random") +} + +fn now_seconds() -> i32 { + i32::try_from( + SystemTime::now() + .duration_since(UNIX_EPOCH) + .expect("clock before Unix epoch") + .as_secs(), + ) + .expect("current Unix time fits the C# Int32 fixture") +} + +fn map(entries: impl IntoIterator) -> OSD { + OSD::Map( + entries + .into_iter() + .map(|(key, value)| (key.to_owned(), value)) + .collect(), + ) +} + +fn permissions(creator: UUID, last_owner: UUID, owner: Option) -> OSD { + map([ + ("creator_id", OSD::UUID(creator)), + ("last_owner_id", OSD::UUID(last_owner)), + ("owner_id", OSD::UUID(owner.unwrap_or(last_owner))), + ("base_mask", OSD::Integer(0)), + ("everyone_mask", OSD::Integer(0)), + ("group_mask", OSD::Integer(0)), + ("next_owner_mask", OSD::Integer(0)), + ("owner_mask", OSD::Integer(0)), + ("is_owner_group", OSD::Boolean(false)), + ("group_id", OSD::UUID(UUID::zero())), + ]) +} + +fn sale_info() -> OSD { + map([ + ("sale_price", OSD::Integer(0)), + ("sale_type", OSD::Integer(SaleType::Not as i32)), + ]) +} + +fn concrete_item(item_id: UUID, parent_id: UUID, agent_id: UUID, name: &str) -> OSD { + map([ + ("item_id", OSD::UUID(item_id)), + ("parent_id", OSD::UUID(parent_id)), + ("name", OSD::String(name.into())), + ("desc", OSD::String("desc".into())), + ("agent_id", OSD::UUID(agent_id)), + ("inv_type", OSD::Integer(i32::from(InventoryType::OBJECT.0))), + ("type", OSD::Integer(AssetType::Object as i32)), + ("created_at", OSD::Integer(now_seconds())), + ("permissions", permissions(uuid(), uuid(), Some(agent_id))), + ("sale_info", sale_info()), + ]) +} + +fn link_item( + item_id: UUID, + parent_id: UUID, + agent_id: UUID, + linked_id: UUID, + name: &str, + asset_type: AssetType, +) -> OSD { + map([ + ("item_id", OSD::UUID(item_id)), + ("parent_id", OSD::UUID(parent_id)), + ("name", OSD::String(name.into())), + ("desc", OSD::String("desc".into())), + ("agent_id", OSD::UUID(agent_id)), + ("linked_id", OSD::UUID(linked_id)), + ( + "inv_type", + OSD::Integer(i32::from(InventoryType::TEXTURE.0)), + ), + ("type", OSD::Integer(asset_type as i32)), + ("created_at", OSD::Integer(now_seconds())), + ("permissions", permissions(uuid(), uuid(), None)), + ("sale_info", sale_info()), + ]) +} + +fn section(name: &'static str, value: OSD, embedded: bool) -> OSD { + let content = map([(name, value)]); + if embedded { + map([("_embedded", content)]) + } else { + content + } +} + +fn numbered(value: OSD) -> OSD { + OSD::Map(HashMap::from([("0".into(), value)])) +} + +fn client() -> InventoryAISClient { + let grid = GridClient::new().expect("GridClient constructor"); + InventoryAISClient::new(Some(Arc::new(grid))).expect("InventoryAISClient constructor") +} + +// parity-case: LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.InventoryAISClient_Null_Throws::test ac92e375efc45c50b37e6c82aea372d605fceb470ce053a025e05ff47a5c7121 translated +#[test] +fn inventory_ais_client_null_throws() { + match InventoryAISClient::new(None) { + Err(error) => assert_eq!(error, Error::ArgumentNull), + Ok(_) => panic!("expected ArgumentNull for client"), + } +} + +// parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseLinksFromEmbedded_ObjectAsset_ResultsInAttachmentInventoryTypeAndParsesFields::test 3ae365ed34f12d036dcd44c94f8568d163cfeec2a58b4975975b77b418770131 translated +#[test] +fn parse_links_object_asset_results_in_attachment_type_and_parses_fields() { + let item_id = uuid(); + let parent_id = uuid(); + let agent_id = uuid(); + let linked_id = uuid(); + let response = section( + "links", + numbered(link_item( + item_id, + parent_id, + agent_id, + linked_id, + "TestObject", + AssetType::Object, + )), + true, + ); + let result = client() + .parse_links_from_embedded(Some(response)) + .expect("ParseLinksFromEmbedded"); + assert_eq!(result.len(), 1); + let parsed = &result[0]; + assert_eq!(parsed.base.name(), "TestObject"); + assert_eq!(parsed.base.parent_uuid(), parent_id); + assert_eq!(parsed.asset_uuid(), linked_id); + assert_eq!(parsed.base.owner_id(), agent_id); + assert_ne!(parsed.creation_date(), UNIX_EPOCH); +} + +// parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseItemsFromEmbedded_ItemsKey_ParsesConcreteItems::test d9e7c64106639071e1ec6ada7346bfa050a31183becaac79efefcd4755fe2855 translated +#[test] +fn parse_items_items_key_parses_concrete_items() { + let item_id = uuid(); + let parent_id = uuid(); + let agent_id = uuid(); + let response = section( + "items", + numbered(concrete_item(item_id, parent_id, agent_id, "ConcreteItem")), + true, + ); + let result = client() + .parse_items_from_embedded(Some(response)) + .expect("ParseItemsFromEmbedded"); + assert_eq!(result.len(), 1); + let parsed = &result[0]; + assert_eq!(parsed.base.name(), "ConcreteItem"); + assert_eq!(parsed.base.parent_uuid(), parent_id); + assert_eq!(parsed.base.owner_id(), agent_id); + assert_ne!(parsed.creation_date(), UNIX_EPOCH); +} + +// parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseLinksFromEmbedded_MeshAsset_TreatedAsAttachment::test f807110d577c654128dd8d42e618c610c260c4f3367cf2795776564409f876a2 translated +#[test] +fn parse_links_mesh_asset_treated_as_attachment() { + let item_id = uuid(); + let parent_id = uuid(); + let agent_id = uuid(); + let linked_id = uuid(); + let response = section( + "links", + numbered(link_item( + item_id, + parent_id, + agent_id, + linked_id, + "MeshLink", + AssetType::Mesh, + )), + false, + ); + let result = client() + .parse_links_from_embedded(Some(response)) + .expect("ParseLinksFromEmbedded"); + assert_eq!(result.len(), 1); + let parsed = &result[0]; + assert_eq!(parsed.base.name(), "MeshLink"); + assert_eq!(parsed.base.parent_uuid(), parent_id); + assert_eq!(parsed.asset_uuid(), linked_id); +} + +// parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseItemsFromEmbedded_TopLevelItemsKey_WorksWithoutEmbedded::test 9c8f2090d59ff5e75e75381a7283c501cadd56e591991cdead23c504738a0a6d translated +#[test] +fn parse_items_top_level_items_key_works_without_embedded() { + let response = section( + "items", + numbered(concrete_item(uuid(), uuid(), uuid(), "TopLevelItem")), + false, + ); + let result = client() + .parse_items_from_embedded(Some(response)) + .expect("ParseItemsFromEmbedded"); + assert_eq!(result.len(), 1); + assert_eq!(result[0].base.name(), "TopLevelItem"); +} + +// parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseLinksFromEmbedded_TopLevelLinksKey_WorksWithoutEmbedded::test 29afd2bd6a554959d6cfa99b632672d56bbb5bcad2ccbaf8caf4773a514f5d79 translated +#[test] +fn parse_links_top_level_links_key_works_without_embedded() { + let response = section( + "links", + numbered(link_item( + uuid(), + uuid(), + uuid(), + uuid(), + "TopLevelLink", + AssetType::Object, + )), + false, + ); + let result = client() + .parse_links_from_embedded(Some(response)) + .expect("ParseLinksFromEmbedded"); + assert_eq!(result.len(), 1); + assert_eq!(result[0].base.name(), "TopLevelLink"); +} + +// parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseItemsFromEmbedded_NullOrEmpty_ReturnsEmptyList::test 198fb619bbf396a4b1a7b4b85b7fba8808ae127e2575b2b84d21f01a2bdbc445 translated +#[test] +fn parse_items_null_or_empty_returns_empty_list() { + let ais = client(); + assert!( + ais.parse_items_from_embedded(None) + .expect("ParseItemsFromEmbedded null") + .is_empty() + ); + assert!( + ais.parse_items_from_embedded(Some(OSD::Map(HashMap::new()))) + .expect("ParseItemsFromEmbedded empty") + .is_empty() + ); +} + +// parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseEmbedded_CombinesItemsAndLinks::test f2ebf4638c9aef3c846dc182d97d80c95118799428cf8c2bba86163e33196846 translated +#[test] +fn parse_embedded_combines_items_and_links() { + let item = concrete_item(uuid(), uuid(), uuid(), "I"); + let link = link_item(uuid(), uuid(), uuid(), uuid(), "L", AssetType::Object); + let response = map([( + "_embedded", + map([("items", numbered(item)), ("links", numbered(link))]), + )]); + let mut folders = None; + let mut items = None; + let mut links = None; + client() + .parse_embedded(response, &mut folders, &mut items, &mut links) + .expect("ParseEmbedded"); + assert_eq!(items.expect("items output").len(), 1); + assert_eq!(links.expect("links output").len(), 1); + assert!(folders.is_some(), "folders output must not be null"); +} + +// parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.MoveCategoryLinksAsync_AlwaysReturnsFalse::test bebad05897efc0da2f959b4f567faa3ffee950520d13265ecbab1dee978f4886 translated +#[test] +fn move_category_links_always_returns_false() { + let result = block_on(client().move_category_links("outfit".into(), uuid(), None)) + .expect("MoveCategoryLinksAsync"); + assert!(!result, "AIS v3 has no MoveCategoryLinks equivalent"); +} + +// parity-case: LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.MoveCategoryLinksAsync_ReturnsCompletedTask::test f9830b11e6a75c90f8394a5ade56bbd542c140be4c050ba7db6c9ee4d2b7a699 translated +#[test] +fn move_category_links_returns_completed_future() { + let ais = client(); + let mut future = std::pin::pin!(ais.move_category_links("outfit".into(), uuid(), None)); + let mut context = Context::from_waker(Waker::noop()); + assert!( + matches!(future.as_mut().poll(&mut context), Poll::Ready(Ok(false))), + "MoveCategoryLinksAsync should be immediately ready with false" + ); +} diff --git a/tests/compat/tests/inventory_live_semantics.rs b/tests/compat/tests/inventory_live_semantics.rs new file mode 100644 index 0000000..bbf1fc9 --- /dev/null +++ b/tests/compat/tests/inventory_live_semantics.rs @@ -0,0 +1,357 @@ +// Exact Rust translations of LibreMetaverse.Tests/InventoryFetchTests.cs and +// LibreMetaverse.Tests/LibraryInventoryTests.cs. +// Source SHA-256: f5876550ab924ad034ade848e562ee70bbb4e004299d928f43c45cadd1a01465 +// Source SHA-256: 1d65ebbaf8fd22427371e2a7f1ef76a4f9a70df0bea7fa53f8f5d3fd3044fa53 + +use libremetaverse::{ + GridClient, InventoryFolder, InventoryItem, InventoryObjectClass, InventorySortOrder, + NetworkManager, +}; +use libremetaverse_compat_tests::{block_on, live_grid_credentials}; +use libremetaverse_types::UUID; +use libremetaverse_types::compat::{CancellationToken, CancellationTokenSource}; +use std::sync::Arc; +use std::time::Duration; + +struct LiveInventory { + client: GridClient, +} + +impl LiveInventory { + fn login() -> Self { + let mut client = GridClient::new().expect("GridClient constructor"); + client.settings().timing().login_timeout = 30_000; + let network = client.network(); + let (first, last, password, login_url) = live_grid_credentials(); + let start = NetworkManager::start_location("Hooper".into(), 179, 18, 32) + .expect("NetworkManager StartLocation"); + let mut login = network + .default_login_params( + first, + last, + password, + "Unit Test Framework".into(), + "admin@radegast.life".into(), + ) + .expect("NetworkManager DefaultLoginParams"); + login.start = start; + login.uri = login_url; + let logged_in = block_on(network.login_with_login_params_cancellation_token(login, None)) + .expect("NetworkManager LoginAsync"); + assert!( + logged_in, + "client failed to login: {}", + network.login_message() + ); + assert!(network.connected(), "client is not connected to the grid"); + assert!( + network.current_sim().is_some(), + "CurrentSim is null after successful login" + ); + Self { client } + } + + fn agent_id(&mut self) -> UUID { + self.client.self_().agent_id() + } +} + +impl Drop for LiveInventory { + fn drop(&mut self) { + let _ = self.client.network().logout_with_method(); + let _ = self.client.dispose_with_method(); + } +} + +fn cancellation_after(duration: Duration) -> CancellationToken { + let source = Arc::new(CancellationTokenSource::new()); + let token = source.token(); + std::thread::spawn(move || { + std::thread::sleep(duration); + source.cancel(); + }); + token +} + +fn folders(entries: &[Box]) -> impl Iterator { + entries + .iter() + .filter_map(|entry| entry.as_any().downcast_ref::()) +} + +fn items(entries: &[Box]) -> impl Iterator { + entries + .iter() + .filter_map(|entry| entry.as_any().downcast_ref::()) +} + +// parity-case: LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventorySkeletonIsPopulatedAfterLogin::test ea1508e3c676639f00bb8a4c4c72d2ee668603bfbff40ee0b93d7f4beb607f75 ignored-live +#[test] +#[cfg_attr( + not(live_grid_credentials), + ignore = "requires GRID_USER, GRID_PASSWORD, and GRID_LOGIN_URL in the environment or workspace .env" +)] +fn inventory_skeleton_is_populated_after_login() { + let mut live = LiveInventory::login(); + let agent_id = live.agent_id(); + let store = live.client.inventory().store().expect("inventory store"); + let root = store.root_folder().expect("inventory root folder"); + assert_ne!(root.base.uuid(), UUID::zero()); + let children = store + .get_contents_with_inventory_folder(&root) + .expect("inventory root contents"); + assert!(!children.is_empty(), "inventory root has no children"); + assert_eq!(folders(&children).count(), children.len()); + let first = folders(&children).next().expect("inventory sub-folder"); + assert_eq!(first.base.owner_id(), agent_id); +} + +// parity-case: LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventoryRootContainsFolders::test 71f41c718060622e1fd653e6b0fc9fe65f3cd68cab3d128f494cdbc90f9d2726 ignored-live +#[test] +#[cfg_attr( + not(live_grid_credentials), + ignore = "requires GRID_USER, GRID_PASSWORD, and GRID_LOGIN_URL in the environment or workspace .env" +)] +fn inventory_root_contains_folders() { + let mut live = LiveInventory::login(); + let agent_id = live.agent_id(); + let root = live + .client + .inventory() + .store() + .expect("inventory store") + .root_folder() + .expect("inventory root folder"); + assert_ne!(root.base.uuid(), UUID::zero()); + let contents = block_on(live.client.inventory().folder_contents( + root.base.uuid(), + agent_id, + true, + true, + InventorySortOrder::BY_NAME, + Some(cancellation_after(Duration::from_secs(30))), + None, + )) + .expect("FolderContentsAsync"); + if contents.is_empty() { + eprintln!("inventory root fetch returned no results; transient server issue"); + return; + } + assert!(folders(&contents).next().is_some()); +} + +// parity-case: LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventoryFolderContainsItems::test f0d77649b82d4d7d7778acebd851dd4eb44b76eb687af07bccdd20a1efe96223 ignored-live +#[test] +#[cfg_attr( + not(live_grid_credentials), + ignore = "requires GRID_USER, GRID_PASSWORD, and GRID_LOGIN_URL in the environment or workspace .env" +)] +fn inventory_folder_contains_items() { + let mut live = LiveInventory::login(); + let agent_id = live.agent_id(); + let store = live.client.inventory().store().expect("inventory store"); + let root = store.root_folder().expect("inventory root folder"); + assert_ne!(root.base.uuid(), UUID::zero()); + let skeleton = store + .get_contents_with_inventory_folder(&root) + .expect("inventory skeleton"); + let subfolders: Vec<_> = folders(&skeleton).collect(); + assert!(!subfolders.is_empty(), "no inventory sub-folders"); + let token = cancellation_after(Duration::from_secs(30)); + let mut found = None; + for folder in subfolders { + if token.is_cancellation_requested() { + break; + } + let Ok(contents) = block_on(live.client.inventory().folder_contents( + folder.base.uuid(), + agent_id, + true, + true, + InventorySortOrder::BY_NAME, + Some(token.clone()), + None, + )) else { + continue; + }; + let found_items: Vec<_> = items(&contents).collect(); + if let Some(first) = found_items.first() { + found = Some(( + folder.base.name(), + found_items.len(), + first.base.name(), + first.asset_type(), + )); + break; + } + } + let Some((folder_name, count, first_name, first_type)) = found else { + eprintln!("no items found in any inventory sub-folder"); + return; + }; + assert!(count > 0, "folder {folder_name} has no items"); + eprintln!("found {count} items in {folder_name}; first: {first_name} ({first_type:?})"); +} + +// parity-case: LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventoryItemCanBeFetchedById::test 7fe89086754a673ab69814202b48aab9add30dd63ee98a953bdedd54d6788af2 ignored-live +#[test] +#[cfg_attr( + not(live_grid_credentials), + ignore = "requires GRID_USER, GRID_PASSWORD, and GRID_LOGIN_URL in the environment or workspace .env" +)] +fn inventory_item_can_be_fetched_by_id() { + let mut live = LiveInventory::login(); + let agent_id = live.agent_id(); + let store = live.client.inventory().store().expect("inventory store"); + let root = store.root_folder().expect("inventory root folder"); + let skeleton = store + .get_contents_with_inventory_folder(&root) + .expect("inventory skeleton"); + let subfolders: Vec<_> = folders(&skeleton).collect(); + assert!(!subfolders.is_empty(), "no inventory sub-folders"); + let token = cancellation_after(Duration::from_secs(30)); + let mut target = None; + for folder in subfolders { + if token.is_cancellation_requested() { + break; + } + let Ok(contents) = block_on(live.client.inventory().folder_contents( + folder.base.uuid(), + agent_id, + true, + true, + InventorySortOrder::BY_NAME, + Some(token.clone()), + None, + )) else { + continue; + }; + if let Some(item) = items(&contents).next() { + target = Some((item.base.uuid(), item.base.name())); + break; + } + } + let Some((target_id, target_name)) = target else { + eprintln!("no inventory item found to fetch by UUID"); + return; + }; + let fetched = block_on(live.client.inventory().fetch_item_http( + target_id, + agent_id, + Some(token), + )) + .expect("FetchItemHttpAsync") + .expect("fetched inventory item"); + assert_eq!(fetched.base.uuid(), target_id); + assert_eq!(fetched.base.name(), target_name); +} + +// parity-case: LibreMetaverse.Tests/LibraryInventoryTests.cs::LibraryInventoryTests.LibraryFoldersArePopulatedAfterLogin::test dc865c88bb514bb71157a451e938b5ae3e3adde208d267d6a7196706dc9cfda2 ignored-live +#[test] +#[cfg_attr( + not(live_grid_credentials), + ignore = "requires GRID_USER, GRID_PASSWORD, and GRID_LOGIN_URL in the environment or workspace .env" +)] +fn library_folders_are_populated_after_login() { + let live = LiveInventory::login(); + let store = live.client.inventory().store().expect("inventory store"); + let root = store.library_folder().expect("library root folder"); + assert_ne!(root.base.uuid(), UUID::zero()); + let children = store + .get_contents_with_inventory_folder(&root) + .expect("library root contents"); + assert!(!children.is_empty(), "library root has no children"); + assert_eq!(folders(&children).count(), children.len()); + assert_ne!( + folders(&children) + .next() + .expect("library sub-folder") + .base + .owner_id(), + UUID::zero() + ); +} + +// parity-case: LibreMetaverse.Tests/LibraryInventoryTests.cs::LibraryInventoryTests.LibraryFolderItemsCanBeFetched::test 475561d29dd25aba52d94f8374fe9083fea2ed7af44dfb6d25b55ce487b080ab ignored-live +#[test] +#[cfg_attr( + not(live_grid_credentials), + ignore = "requires GRID_USER, GRID_PASSWORD, and GRID_LOGIN_URL in the environment or workspace .env" +)] +fn library_folder_items_can_be_fetched() { + let live = LiveInventory::login(); + let store = live.client.inventory().store().expect("inventory store"); + let root = store.library_folder().expect("library root folder"); + let skeleton = store + .get_contents_with_inventory_folder(&root) + .expect("library skeleton"); + let owner = folders(&skeleton) + .map(|folder| folder.base.owner_id()) + .find(|owner| *owner != UUID::zero()) + .expect("library owner UUID"); + let contents = block_on(live.client.inventory().folder_contents( + root.base.uuid(), + owner, + true, + true, + InventorySortOrder::BY_NAME, + Some(cancellation_after(Duration::from_secs(30))), + None, + )) + .expect("FolderContentsAsync"); + if contents.is_empty() { + eprintln!("library root fetch returned no results; transient server issue"); + return; + } + assert!(folders(&contents).next().is_some()); +} + +// parity-case: LibreMetaverse.Tests/LibraryInventoryTests.cs::LibraryInventoryTests.LibrarySubFolderContainsItems::test a6d02cbcb7fde8248419f1cf7355c3d37f06e8b365dc483fad935dd9a0ac5909 ignored-live +#[test] +#[cfg_attr( + not(live_grid_credentials), + ignore = "requires GRID_USER, GRID_PASSWORD, and GRID_LOGIN_URL in the environment or workspace .env" +)] +fn library_sub_folder_contains_items() { + let live = LiveInventory::login(); + let store = live.client.inventory().store().expect("inventory store"); + let root = store.library_folder().expect("library root folder"); + let skeleton = store + .get_contents_with_inventory_folder(&root) + .expect("library skeleton"); + let subfolders: Vec<_> = folders(&skeleton).collect(); + assert!(!subfolders.is_empty(), "no library sub-folders"); + let owner = subfolders + .iter() + .map(|folder| folder.base.owner_id()) + .find(|owner| *owner != UUID::zero()) + .expect("library owner UUID"); + let token = cancellation_after(Duration::from_secs(30)); + let mut found = None; + for folder in subfolders { + if token.is_cancellation_requested() { + break; + } + let Ok(contents) = block_on(live.client.inventory().folder_contents( + folder.base.uuid(), + owner, + true, + true, + InventorySortOrder::BY_NAME, + Some(token.clone()), + None, + )) else { + continue; + }; + let count = items(&contents).count(); + if count > 0 { + found = Some((folder.base.name(), count)); + break; + } + } + let Some((folder_name, count)) = found else { + eprintln!("no items found in any library sub-folder"); + return; + }; + assert!(count > 0, "folder {folder_name} has no items"); +} diff --git a/tests/compat/tests/inventory_manager_semantics.rs b/tests/compat/tests/inventory_manager_semantics.rs new file mode 100644 index 0000000..91fdb35 --- /dev/null +++ b/tests/compat/tests/inventory_manager_semantics.rs @@ -0,0 +1,75 @@ +// Exact Rust translations of LibreMetaverse.Tests/ConstructorNullArgumentTests.cs and +// LibreMetaverse.Tests/InventoryManagerTests.cs inventory-owned cases. +// Source SHA-256: 28deea0bf4d9353a2424842c6184abab8fe82746ceb12e093912728a247f21bc +// Source SHA-256: 9fd33d6a4e9f3aa2d414439203eecda605ede3eb6e848533ef0778b023407c3d + +use libremetaverse::{ + Error, InventoryItem, InventoryManager, InventoryNotecard, InventoryTexture, Permissions, +}; +use libremetaverse_types::{AssetType, InventoryType, SaleType, UUID}; +use std::time::SystemTime; + +fn uuid() -> UUID { + UUID::random().expect("UUID Random") +} + +// parity-case: LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.InventoryManager_Null_Throws::test 5e7498066c944800354abbc71eea825fe90d0c40a25a6065967a3ebcc9efea74 translated +#[test] +fn inventory_manager_null_throws() { + match InventoryManager::new(None) { + Err(error) => assert_eq!(error, Error::ArgumentNull), + Ok(_) => panic!("expected ArgumentNull for client"), + } +} + +// parity-case: LibreMetaverse.Tests/InventoryManagerTests.cs::InventoryManagerTests.EncryptDecrypt_RoundTrip::test 7b59c330ffacf1174dd884f369a4e4015e1a212a0e43d7fa8889f7505dd5599d translated +#[test] +fn encrypt_decrypt_round_trip() { + let asset_id = uuid(); + let shadow = InventoryManager::encrypt_asset_id(asset_id).expect("EncryptAssetID"); + let decrypted = InventoryManager::decrypt_shadow_id(shadow).expect("DecryptShadowID"); + assert_eq!(decrypted, asset_id); +} + +// parity-case: LibreMetaverse.Tests/InventoryManagerTests.cs::InventoryManagerTests.ItemCRC_IsDeterministic_AndChangesWhenFieldsChange::test dbd322778ad7f110abce5f10a0c83ad002ae76f6a114fa795fb90a799f4ff077 translated +#[test] +fn item_crc_is_deterministic_and_changes_when_fields_change() { + let mut item = InventoryItem::new_with_uuid(uuid()).expect("InventoryItem constructor"); + item.set_asset_uuid(uuid()); + item.base.set_parent_uuid(uuid()); + item.set_creator_id(uuid()); + item.base.set_owner_id(uuid()); + item.set_group_id(uuid()); + item.set_flags(0x1234_5678); + item.set_inventory_type(InventoryType::OBJECT); + item.set_asset_type(AssetType::Object); + item.set_creation_date(SystemTime::now()); + item.set_sale_price(42); + item.set_sale_type(SaleType::Not); + item.set_permissions(Permissions::full_permissions()); + + let crc1 = InventoryManager::item_crc(&item).expect("ItemCRC first"); + let crc2 = InventoryManager::item_crc(&item).expect("ItemCRC second"); + assert_eq!(crc2, crc1, "ItemCRC must be deterministic"); + + item.set_asset_uuid(uuid()); + let crc3 = InventoryManager::item_crc(&item).expect("ItemCRC changed"); + assert_ne!(crc3, crc1, "ItemCRC must include AssetUUID"); +} + +// parity-case: LibreMetaverse.Tests/InventoryManagerTests.cs::InventoryManagerTests.CreateInventoryItem_ReturnsCorrectSubclass::test 219f8c91bc1b3d5b5d3e5b2f2880c5733fd02e6103ccc9c6ecbf8d03328274f6 translated +#[test] +fn create_inventory_item_returns_correct_subclass() { + let id = uuid(); + let texture = InventoryManager::create_inventory_item(InventoryType::TEXTURE, id) + .expect("CreateInventoryItem texture"); + let notecard = InventoryManager::create_inventory_item(InventoryType::NOTECARD, id) + .expect("CreateInventoryItem notecard"); + // C# explicitly casts 999 to the signed-byte-backed InventoryType, yielding -25. + let unknown = InventoryManager::create_inventory_item(InventoryType(-25), id) + .expect("CreateInventoryItem unknown"); + + assert!(texture.as_any().is::()); + assert!(notecard.as_any().is::()); + assert!(unknown.as_any().is::()); +} diff --git a/tests/compat/tests/inventory_store_semantics.rs b/tests/compat/tests/inventory_store_semantics.rs new file mode 100644 index 0000000..1d86f40 --- /dev/null +++ b/tests/compat/tests/inventory_store_semantics.rs @@ -0,0 +1,545 @@ +// Exact Rust translations of LibreMetaverse.Tests/InventoryTests.cs. +// Source SHA-256: 378ab668bdea082d90fb0105e2bcd6b7734d7fe9eb9c1bf550554bd4ef700953 + +use libremetaverse::{GridClient, Inventory, InventoryFolder, InventoryItem, InventoryNode}; +use libremetaverse_compat_tests::block_on; +use libremetaverse_types::{AssetType, UUID}; +use std::path::{Path, PathBuf}; +use std::sync::{Arc, Mutex}; + +fn uuid() -> UUID { + UUID::random().expect("UUID Random") +} + +struct Fixture { + client: Arc, + inventory: Inventory, +} + +impl Fixture { + fn new() -> Self { + let client = Arc::new(GridClient::new().expect("GridClient constructor")); + let inventory = Inventory::new_with_grid_client_uuid(Arc::clone(&client), uuid()) + .expect("Inventory constructor"); + Self { client, inventory } + } +} + +impl Drop for Fixture { + fn drop(&mut self) { + let _ = self.client.dispose_with_method(); + } +} + +fn folder(name: &str, parent: UUID) -> InventoryFolder { + let mut folder = InventoryFolder::new(uuid()).expect("InventoryFolder constructor"); + folder.base.set_name(name.into()); + folder.base.set_parent_uuid(parent); + folder +} + +fn item(name: &str, parent: UUID) -> InventoryItem { + let mut item = InventoryItem::new_with_uuid(uuid()).expect("InventoryItem constructor"); + item.base.set_name(name.into()); + item.base.set_parent_uuid(parent); + item +} + +struct TempDirectory(PathBuf); + +impl TempDirectory { + fn new() -> Self { + let path = std::env::temp_dir().join(format!("metacrate-inventory-{}", uuid().to_string())); + std::fs::create_dir(&path).expect("create isolated temporary directory"); + Self(path) + } + + fn file(&self, name: &str) -> PathBuf { + self.0.join(name) + } +} + +impl Drop for TempDirectory { + fn drop(&mut self) { + let _ = std::fs::remove_dir_all(&self.0); + } +} + +fn path_string(path: &Path) -> String { + path.to_string_lossy().into_owned() +} + +// parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.AddAndGetItem::test 24702f0cf9215beee29123ee81dab4a7fe971beb197ecceac9a1761b695bce45 translated +#[test] +fn add_and_get_item() { + let fixture = Fixture::new(); + let folder = folder("TestFolder", UUID::zero()); + let folder_id = folder.base.uuid(); + fixture.inventory.update_node_for(&folder).unwrap(); + let item = item("Item1", folder_id); + let item_id = item.base.uuid(); + fixture.inventory.update_node_for(&item).unwrap(); + + assert!(fixture.inventory.contains_with_uuid(item_id).unwrap()); + let mut found = None; + assert!( + fixture + .inventory + .try_get_value_with_uuid_inventory_base(item_id, &mut found) + .unwrap() + ); + let found = found.expect("inventory item"); + assert!(found.as_any().is::()); + assert_eq!(found.inventory_base().name(), "Item1"); + + let contents = fixture + .inventory + .get_contents_with_inventory_folder(&folder) + .unwrap(); + assert_eq!(contents.len(), 1); + assert_eq!(contents[0].inventory_base().uuid(), item_id); +} + +// parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.UpdateItemParent::test ea1a73e28fb92b873ee28102e81811d769b5cd815d2e1d756ece6ea635e5c014 translated +#[test] +fn update_item_parent() { + let fixture = Fixture::new(); + let folder1 = folder("F1", UUID::zero()); + let folder2 = folder("F2", UUID::zero()); + let folder1_id = folder1.base.uuid(); + let folder2_id = folder2.base.uuid(); + fixture.inventory.update_node_for(&folder1).unwrap(); + fixture.inventory.update_node_for(&folder2).unwrap(); + let mut item = item("Item", folder1_id); + let item_id = item.base.uuid(); + fixture.inventory.update_node_for(&item).unwrap(); + assert_eq!(item.base.parent_uuid(), folder1_id); + + item.base.set_parent_uuid(folder2_id); + fixture.inventory.update_node_for(&item).unwrap(); + + let contents1 = fixture + .inventory + .get_contents_with_inventory_folder(&folder1) + .unwrap(); + let contents2 = fixture + .inventory + .get_contents_with_inventory_folder(&folder2) + .unwrap(); + assert!( + contents1 + .iter() + .all(|entry| entry.inventory_base().uuid() != item_id) + ); + assert!( + contents2 + .iter() + .any(|entry| entry.inventory_base().uuid() == item_id) + ); +} + +// parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.InventoryNodeModifyTime_SelfLoop::test f8050cc284f7954c1301091ddc1cbf0fa76073806eee7de4f6cb21063591fbf1 translated +#[test] +fn inventory_node_modify_time_self_loop() { + let folder_id = uuid(); + let mut folder = InventoryFolder::new(folder_id).unwrap(); + folder.base.set_name("F1".into()); + folder.base.set_parent_uuid(folder_id); + let node = InventoryNode::new_with_inventory_base(&folder).unwrap(); + assert_eq!(node.modify_time(), std::time::SystemTime::UNIX_EPOCH); +} + +// parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.UpdateNodeFor_SelfLoop::test 14f42e5263c465e8534347c5a3195c195e2d90371dbc2f69d36a40362384505c translated +#[test] +fn update_node_for_self_loop() { + let fixture = Fixture::new(); + let folder_id = uuid(); + let mut folder = InventoryFolder::new(folder_id).unwrap(); + folder.base.set_name("F1".into()); + folder.base.set_parent_uuid(folder_id); + fixture.inventory.update_node_for(&folder).unwrap(); + assert!(fixture.inventory.contains_with_uuid(folder_id).unwrap()); +} + +// parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.UpdateNodeFor_ComplexSelfLoop::test a2fc7b29b8a7a7767c42ea9c7fb9628451c88991c3eb1ecbd2ce0952ab0b5700 translated +#[test] +fn update_node_for_complex_self_loop() { + let fixture = Fixture::new(); + let folder1_id = uuid(); + let folder2_id = uuid(); + let mut folder1 = InventoryFolder::new(folder1_id).unwrap(); + folder1.base.set_name("F1".into()); + folder1.base.set_parent_uuid(folder2_id); + let mut folder2 = InventoryFolder::new(folder2_id).unwrap(); + folder2.base.set_name("F2".into()); + folder2.base.set_parent_uuid(folder1_id); + + fixture.inventory.update_node_for(&folder1).unwrap(); + assert!(fixture.inventory.contains_with_uuid(folder1_id).unwrap()); + assert!(fixture.inventory.contains_with_uuid(folder2_id).unwrap()); +} + +// parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.RemoveItem::test 1e72f9049b9114f0c56e152d84190d31bca7a862f7ad1459624d753beb6818b4 translated +#[test] +fn remove_item() { + let fixture = Fixture::new(); + let folder = folder("Folder", UUID::zero()); + let folder_id = folder.base.uuid(); + fixture.inventory.update_node_for(&folder).unwrap(); + let item = item("ToRemove", folder_id); + let item_id = item.base.uuid(); + fixture.inventory.update_node_for(&item).unwrap(); + assert!(fixture.inventory.contains_with_uuid(item_id).unwrap()); + fixture.inventory.remove_node_for(&item).unwrap(); + assert!(!fixture.inventory.contains_with_uuid(item_id).unwrap()); +} + +// parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.SaveAndRestoreAsync::test bf23b1c67cc9618713d2d8e6653f0ffbbf4c24d7f2c59c5dd639047f7e0c8156 translated +#[test] +fn save_and_restore_async() { + let fixture = Fixture::new(); + let folder = folder("FolderSave", UUID::zero()); + let folder_id = folder.base.uuid(); + fixture.inventory.update_node_for(&folder).unwrap(); + let item = item("SaveItem", folder_id); + let item_id = item.base.uuid(); + fixture.inventory.update_node_for(&item).unwrap(); + let temporary = TempDirectory::new(); + let file = path_string(&temporary.file("inventory.bin")); + + block_on( + fixture + .inventory + .save_to_disk_with_string_cancellation_token(file.clone(), None), + ) + .unwrap(); + fixture.inventory.clear().unwrap(); + assert!(!fixture.inventory.contains_with_uuid(item_id).unwrap()); + let count = block_on( + fixture + .inventory + .restore_from_disk_with_string_cancellation_token(file, None), + ) + .unwrap(); + assert!(count >= 0); +} + +// parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.GetNodeOrDefault_ReturnsNullWhenMissing::test f5651b5a143470c3ab6ba1f835206a1a55a6218c28242dc12c5d6b5e89519596 translated +#[test] +fn get_node_or_default_returns_null_when_missing() { + assert!( + Fixture::new() + .inventory + .get_node_or_default(uuid()) + .unwrap() + .is_none() + ); +} + +// parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.TryGetValue_Generic::test e6f6d6535af9d011e65cb3c297fe99543f85b64382c47e1756f051d6031886f5 translated +#[test] +fn try_get_value_generic() { + let fixture = Fixture::new(); + let folder = folder("GenFolder", UUID::zero()); + let folder_id = folder.base.uuid(); + fixture.inventory.update_node_for(&folder).unwrap(); + let item = item("GenItem", folder_id); + let item_id = item.base.uuid(); + fixture.inventory.update_node_for(&item).unwrap(); + let mut found = None; + assert!( + fixture + .inventory + .try_get_value_with_uuid_t::(item_id, &mut found) + ); + let found = found.expect("generic inventory item"); + assert_eq!(found.base.uuid(), item_id); +} + +// parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.RemoveFolderRemovesAllDescendants::test b537223d271b75c11adfa6d87c1e79bb29366f294657ddf71f236fab0dee009f translated +#[test] +fn remove_folder_removes_all_descendants() { + let fixture = Fixture::new(); + let parent = folder("Parent", UUID::zero()); + let parent_id = parent.base.uuid(); + let child = folder("ChildFolder", parent_id); + let child_id = child.base.uuid(); + let item = item("NestedItem", child_id); + let item_id = item.base.uuid(); + fixture.inventory.update_node_for(&parent).unwrap(); + fixture.inventory.update_node_for(&child).unwrap(); + fixture.inventory.update_node_for(&item).unwrap(); + assert!(fixture.inventory.contains_with_uuid(parent_id).unwrap()); + assert!(fixture.inventory.contains_with_uuid(child_id).unwrap()); + assert!(fixture.inventory.contains_with_uuid(item_id).unwrap()); + + fixture.inventory.remove_node_for(&parent).unwrap(); + assert!(!fixture.inventory.contains_with_uuid(parent_id).unwrap()); + assert!(!fixture.inventory.contains_with_uuid(child_id).unwrap()); + assert!(!fixture.inventory.contains_with_uuid(item_id).unwrap()); +} + +// parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.DescendentCountUpdatesOnAddAndRemove::test cfe6571887d0e992ff4d69ccbcdfb34012f9bb5d62118201c33d7d66cc9ddfd8 translated +#[test] +fn descendent_count_updates_on_add_and_remove() { + let fixture = Fixture::new(); + let folder = folder("Folder", UUID::zero()); + let folder_id = folder.base.uuid(); + fixture.inventory.update_node_for(&folder).unwrap(); + let node = fixture.inventory.get_node_for(folder_id).unwrap(); + let data = node.data().expect("folder node data"); + let folder_data = data + .as_any() + .downcast_ref::() + .expect("InventoryFolder data"); + assert_eq!(folder_data.descendent_count(), 0); + + let item = item("Item", folder_id); + fixture.inventory.update_node_for(&item).unwrap(); + let node = fixture.inventory.get_node_for(folder_id).unwrap(); + let data = node.data().expect("folder node data after add"); + let folder_data = data.as_any().downcast_ref::().unwrap(); + assert!(folder_data.descendent_count() > 0); + + fixture.inventory.remove_node_for(&item).unwrap(); + let node = fixture.inventory.get_node_for(folder_id).unwrap(); + let data = node.data().expect("folder node data after remove"); + let folder_data = data.as_any().downcast_ref::().unwrap(); + assert_eq!(folder_data.descendent_count(), 0); +} + +// parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.MovingItemUpdatesAncestorDescendentCounts::test 1f4b4189694b9471d48562a434c91a9e455706b83b65bb855c0846388b44c759 translated +#[test] +fn moving_item_updates_ancestor_descendent_counts() { + let fixture = Fixture::new(); + let folder1 = folder("F1", UUID::zero()); + let folder2 = folder("F2", UUID::zero()); + let folder1_id = folder1.base.uuid(); + let folder2_id = folder2.base.uuid(); + fixture.inventory.update_node_for(&folder1).unwrap(); + fixture.inventory.update_node_for(&folder2).unwrap(); + let mut item = item("Movable", folder1_id); + fixture.inventory.update_node_for(&item).unwrap(); + + let first = fixture.inventory.get_node_for(folder1_id).unwrap(); + let first_data = first.data().unwrap(); + let first_folder = first_data + .as_any() + .downcast_ref::() + .unwrap(); + let second = fixture.inventory.get_node_for(folder2_id).unwrap(); + let second_data = second.data().unwrap(); + let second_folder = second_data + .as_any() + .downcast_ref::() + .unwrap(); + assert!(first_folder.descendent_count() > 0); + assert_eq!(second_folder.descendent_count(), 0); + + item.base.set_parent_uuid(folder2_id); + fixture.inventory.update_node_for(&item).unwrap(); + let first = fixture.inventory.get_node_for(folder1_id).unwrap(); + let first_data = first.data().unwrap(); + let first_folder = first_data + .as_any() + .downcast_ref::() + .unwrap(); + let second = fixture.inventory.get_node_for(folder2_id).unwrap(); + let second_data = second.data().unwrap(); + let second_folder = second_data + .as_any() + .downcast_ref::() + .unwrap(); + assert_eq!(first_folder.descendent_count(), 0); + assert!(second_folder.descendent_count() > 0); +} + +// parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.ConcurrentAddMoveRemoveStress::test 0b76b2fb62a6300e02a02859772f146f107caa77986f4d593e3a4d01966ab4e4 translated +#[test] +fn concurrent_add_move_remove_stress() { + const ITEM_COUNT: usize = 500; + let fixture = Fixture::new(); + let folder1 = folder("Folder1", UUID::zero()); + let folder2 = folder("Folder2", UUID::zero()); + let folder3 = folder("Folder3", UUID::zero()); + let folder1_id = folder1.base.uuid(); + let folder2_id = folder2.base.uuid(); + let folder3_id = folder3.base.uuid(); + fixture.inventory.update_node_for(&folder1).unwrap(); + fixture.inventory.update_node_for(&folder2).unwrap(); + fixture.inventory.update_node_for(&folder3).unwrap(); + let items: Vec<_> = (0..ITEM_COUNT) + .map(|index| Arc::new(Mutex::new(item(&format!("Item{index}"), folder1_id)))) + .collect(); + + std::thread::scope(|scope| { + for item in &items { + let item = Arc::clone(item); + let inventory = &fixture.inventory; + scope.spawn(move || inventory.update_node_for(&*item.lock().unwrap()).unwrap()); + } + }); + for item in &items { + assert!( + fixture + .inventory + .contains_with_uuid(item.lock().unwrap().base.uuid()) + .unwrap() + ); + } + + std::thread::scope(|scope| { + for (index, item) in items.iter().enumerate() { + let item = Arc::clone(item); + let inventory = &fixture.inventory; + scope.spawn(move || { + let mut item = item.lock().unwrap(); + item.base.set_parent_uuid(if index % 2 == 0 { + folder2_id + } else { + folder3_id + }); + inventory.update_node_for(&*item).unwrap(); + }); + } + }); + let count = |folder_id| { + let node = fixture.inventory.get_node_for(folder_id).unwrap(); + let data = node.data().unwrap(); + data.as_any() + .downcast_ref::() + .unwrap() + .descendent_count() + }; + assert_eq!(count(folder1_id), 0); + assert_eq!( + count(folder2_id) + count(folder3_id), + i32::try_from(ITEM_COUNT).unwrap() + ); + + std::thread::scope(|scope| { + for item in &items { + let item = Arc::clone(item); + let inventory = &fixture.inventory; + scope.spawn(move || inventory.remove_node_for(&*item.lock().unwrap()).unwrap()); + } + }); + for item in &items { + assert!( + !fixture + .inventory + .contains_with_uuid(item.lock().unwrap().base.uuid()) + .unwrap() + ); + } + assert_eq!(count(folder1_id), 0); + assert_eq!(count(folder2_id), 0); + assert_eq!(count(folder3_id), 0); +} + +// parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.ConcurrentLinkAddRemoveStress::test eef3b4eb300427800757dc6cac2dbd9202ed1cf1aac42565b3c26eb11e71bbf1 translated +#[test] +fn concurrent_link_add_remove_stress() { + const ITEM_COUNT: usize = 200; + let fixture = Fixture::new(); + let folder1 = folder("LinkFolder", UUID::zero()); + let folder2 = folder("LinkFolder2", UUID::zero()); + let folder1_id = folder1.base.uuid(); + let folder2_id = folder2.base.uuid(); + fixture.inventory.update_node_for(&folder1).unwrap(); + fixture.inventory.update_node_for(&folder2).unwrap(); + let asset_id = uuid(); + let items: Vec<_> = (0..ITEM_COUNT) + .map(|index| { + let mut item = item(&format!("L{index}"), folder1_id); + item.set_asset_type(AssetType::Link); + item.set_asset_uuid(asset_id); + Arc::new(Mutex::new(item)) + }) + .collect(); + + std::thread::scope(|scope| { + for item in &items { + let item = Arc::clone(item); + let inventory = &fixture.inventory; + scope.spawn(move || inventory.update_node_for(&*item.lock().unwrap()).unwrap()); + } + }); + assert_eq!( + fixture.inventory.find_all_links(asset_id).unwrap().len(), + ITEM_COUNT + ); + + std::thread::scope(|scope| { + for (index, item) in items.iter().enumerate() { + let item = Arc::clone(item); + let inventory = &fixture.inventory; + scope.spawn(move || { + let mut item = item.lock().unwrap(); + item.base.set_parent_uuid(if index % 2 == 0 { + folder2_id + } else { + folder1_id + }); + inventory.update_node_for(&*item).unwrap(); + }); + } + }); + assert_eq!( + fixture.inventory.find_all_links(asset_id).unwrap().len(), + ITEM_COUNT + ); + + std::thread::scope(|scope| { + for item in &items { + let item = Arc::clone(item); + let inventory = &fixture.inventory; + scope.spawn(move || inventory.remove_node_for(&*item.lock().unwrap()).unwrap()); + } + }); + assert!( + fixture + .inventory + .find_all_links(asset_id) + .unwrap() + .is_empty() + ); + for item in &items { + assert!( + !fixture + .inventory + .contains_with_uuid(item.lock().unwrap().base.uuid()) + .unwrap() + ); + } +} + +// parity-case: LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.LinkIndexUpdateOnAssetChange::test d3e0066e06ab1c48520e5e0bbba8069b74f1a38d37e24d914392406b41b2ea0c translated +#[test] +fn link_index_updates_on_asset_change() { + let fixture = Fixture::new(); + let folder = folder("LUpdate", UUID::zero()); + let folder_id = folder.base.uuid(); + fixture.inventory.update_node_for(&folder).unwrap(); + let asset1 = uuid(); + let asset2 = uuid(); + let mut item = item("LinkItem", folder_id); + let item_id = item.base.uuid(); + item.set_asset_type(AssetType::Link); + item.set_asset_uuid(asset1); + fixture.inventory.update_node_for(&item).unwrap(); + + let found1 = fixture.inventory.find_all_links(asset1).unwrap(); + assert_eq!(found1.len(), 1); + let data = found1[0].data().expect("link node data"); + assert_eq!(data.inventory_base().uuid(), item_id); + + item.set_asset_uuid(asset2); + fixture.inventory.update_node_for(&item).unwrap(); + let found1 = fixture.inventory.find_all_links(asset1).unwrap(); + let found2 = fixture.inventory.find_all_links(asset2).unwrap(); + assert!(found1.is_empty()); + assert_eq!(found2.len(), 1); + let data = found2[0].data().expect("updated link node data"); + assert_eq!(data.inventory_base().uuid(), item_id); +} diff --git a/tests/compat/tests/misclassified_link_semantics.rs b/tests/compat/tests/misclassified_link_semantics.rs index c69e5fa..4744614 100644 --- a/tests/compat/tests/misclassified_link_semantics.rs +++ b/tests/compat/tests/misclassified_link_semantics.rs @@ -6,10 +6,14 @@ use libremetaverse::{ InventoryWearable, }; use libremetaverse_types::{AssetType, AttachmentPoint, UUID, WearableType}; +use std::sync::Arc; fn store() -> Inventory { - Inventory::new_with_grid_client_uuid(GridClient::new().unwrap(), UUID::random().unwrap()) - .unwrap() + Inventory::new_with_grid_client_uuid( + Arc::new(GridClient::new().unwrap()), + UUID::random().unwrap(), + ) + .unwrap() } fn texture_link(target: UUID) -> InventoryTexture { @@ -52,7 +56,7 @@ fn inventory_store_contains_finds_target_by_resolved_item_id() { target.set_wearable_type(WearableType::Shirt); target.base.set_asset_type(AssetType::Clothing); target.base.set_asset_uuid(UUID::random().unwrap()); - store.update_node_for(target.base.base).unwrap(); + store.update_node_for(&target).unwrap(); let link = texture_link(target_id); assert!( store @@ -71,7 +75,7 @@ fn inventory_store_indexer_returns_wearable_when_target_is_wearable() { target.base.set_asset_type(AssetType::Clothing); target.base.set_asset_uuid(UUID::random().unwrap()); target.base.base.set_name("Test Shirt".into()); - store.update_node_for(target.base.base).unwrap(); + store.update_node_for(&target).unwrap(); let link = texture_link(target_id); let resolved = store .get_value_or_default_with_uuid_a7c63fbe::(link.base.resolved_item_id()) @@ -93,7 +97,7 @@ fn inventory_store_indexer_returns_attachment_when_target_is_attachment() { target.base.set_asset_type(AssetType::Object); target.base.set_asset_uuid(UUID::random().unwrap()); target.base.base.set_name("Test Attachment".into()); - store.update_node_for(target.base.base).unwrap(); + store.update_node_for(&target).unwrap(); let link = texture_link(target_id); let resolved = store .get_value_or_default_with_uuid_a7c63fbe::( @@ -117,7 +121,7 @@ fn inventory_store_indexer_returns_object_when_target_is_object() { target.base.set_asset_type(AssetType::Object); target.base.set_asset_uuid(UUID::random().unwrap()); target.base.base.set_name("Test Object".into()); - store.update_node_for(target.base.base).unwrap(); + store.update_node_for(&target).unwrap(); let link = texture_link(target_id); let resolved = store .get_value_or_default_with_uuid_a7c63fbe::(link.base.resolved_item_id()) diff --git a/tests/compat/tests/task_inventory_semantics.rs b/tests/compat/tests/task_inventory_semantics.rs new file mode 100644 index 0000000..1d248e8 --- /dev/null +++ b/tests/compat/tests/task_inventory_semantics.rs @@ -0,0 +1,224 @@ +// Exact Rust translations of LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs. +// Source SHA-256: f444adc7615a805eddeef538ce939375dc2a2fa2cd871aab2ebce37b4e955941 + +use libremetaverse::{ + GridClient, HttpCapsClient, InventoryFolder, InventoryItem, InventoryManager, + InventoryObjectClass, Simulator, +}; +use libremetaverse_compat_tests::block_on; +use libremetaverse_types::UUID; +use libremetaverse_types::compat::{ + CancellationToken, CancellationTokenSource, HttpMessageHandler, HttpRequest, HttpResponse, Uri, +}; +use std::collections::BTreeMap; +use std::sync::{Arc, Mutex}; +use std::time::Duration; + +const CAP: &str = "http://test.invalid/request-task-inventory"; +const SEED: &str = "http://test.invalid/seed"; + +#[derive(Clone)] +struct Recording(Arc>>); + +impl Recording { + fn requests(&self) -> Vec { + self.0.lock().unwrap().clone() + } +} + +fn client_with_cap(response: HttpResponse, expose_capability: bool) -> (GridClient, Recording) { + let requests = Arc::new(Mutex::new(Vec::new())); + let recorded = Arc::clone(&requests); + let response = Mutex::new(Some(response)); + let seed = if expose_capability { + format!("RequestTaskInventory{CAP}") + } else { + "".into() + }; + let handler = HttpMessageHandler::new(move |request, _| { + let result = if request.uri.0 == SEED { + HttpResponse { + status_code: 200, + headers: BTreeMap::new(), + content_type: Some("application/llsd+xml".into()), + body: seed.as_bytes().to_vec(), + } + } else { + recorded.lock().unwrap().push(request); + response.lock().unwrap().take().unwrap_or(HttpResponse { + status_code: 404, + headers: BTreeMap::new(), + content_type: None, + body: Vec::new(), + }) + }; + async move { result } + }); + let mut client = GridClient::new().expect("GridClient constructor"); + client.set_http_caps_client(HttpCapsClient::new(handler.clone()).unwrap()); + let mut simulator_client = GridClient::new().expect("simulator GridClient constructor"); + simulator_client.set_http_caps_client(HttpCapsClient::new(handler).unwrap()); + let simulator = Simulator::new( + simulator_client, + "127.0.0.1:0".parse().unwrap(), + 0, + None, + None, + ) + .unwrap(); + simulator + .set_seed_caps(Some(Uri(SEED.into())), Some(true)) + .unwrap(); + let mut network = client.network(); + network.set_current_sim(Some(simulator)); + client.set_network(network); + (client, Recording(requests)) +} + +fn response(status: u16, body: String) -> HttpResponse { + HttpResponse { + status_code: status, + headers: BTreeMap::new(), + content_type: Some("application/json".into()), + body: body.into_bytes(), + } +} + +fn uuid() -> UUID { + UUID::random().expect("UUID Random") +} + +fn item_json( + item_id: UUID, + parent_id: UUID, + asset_or_shadow_key: &str, + asset_or_shadow_value: UUID, +) -> String { + format!( + concat!( + "{{\"item_id\":\"{}\",\"parent_id\":\"{}\",", + "\"name\":\"Test Item\",\"desc\":\"A test item\",", + "\"type\":7,\"inv_type\":7,\"flags\":0,\"created_at\":1700000000,", + "\"agent_id\":\"11111111-1111-1111-1111-111111111111\",", + "\"{}\":\"{}\",\"permissions\":{{", + "\"creator_id\":\"11111111-1111-1111-1111-111111111111\",", + "\"owner_id\":\"11111111-1111-1111-1111-111111111111\",", + "\"last_owner_id\":\"11111111-1111-1111-1111-111111111111\",", + "\"group_id\":\"00000000-0000-0000-0000-000000000000\",", + "\"base_mask\":2147483647,\"owner_mask\":2147483647,", + "\"group_mask\":0,\"everyone_mask\":0,\"next_owner_mask\":2147483647,", + "\"is_owner_group\":false}},\"sale_info\":{{\"sale_price\":0,\"sale_type\":0}}}}" + ), + item_id.to_string(), + parent_id.to_string(), + asset_or_shadow_key, + asset_or_shadow_value.to_string(), + ) +} + +fn cancellation_after(duration: Duration) -> CancellationToken { + let source = Arc::new(CancellationTokenSource::new()); + let token = source.token(); + std::thread::spawn(move || { + std::thread::sleep(duration); + source.cancel(); + }); + token +} + +fn single(entries: &[Box]) -> &T { + let mut matching = entries + .iter() + .filter_map(|entry| entry.as_any().downcast_ref::()); + let value = matching.next().expect("matching inventory object"); + assert!(matching.next().is_none(), "expected exactly one object"); + value +} + +// parity-case: LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_CapAvailable_ReturnsContentsFolderAndDecryptsShadowId::test c9bfc5526260f9e2dffa8a22938999911fdd80be4b2b6d6487bf6171f8dbb56a translated +#[test] +fn cap_available_returns_contents_folder_and_decrypts_shadow_id() { + let object_id = uuid(); + let item_id = uuid(); + let asset_id = uuid(); + let shadow_id = InventoryManager::encrypt_asset_id(asset_id).unwrap(); + let body = format!( + "{{\"inventory_serial\":3,\"contents\":[{}]}}", + item_json(item_id, object_id, "shadow_id", shadow_id) + ); + let (client, recording) = client_with_cap(response(200, body), true); + let result = block_on( + client + .inventory() + .get_task_inventory(object_id, 12_345, None, None), + ) + .expect("GetTaskInventoryAsync"); + + let requests = recording.requests(); + assert_eq!(requests.len(), 1); + assert!( + requests[0] + .uri + .0 + .contains(&format!("task_id={}", object_id.to_string())) + ); + assert_eq!(result.len(), 2); + let folder = single::(&result); + assert_eq!(folder.base.name(), "Contents"); + assert_eq!(folder.base.uuid(), object_id); + let item = single::(&result); + assert_eq!(item.base.uuid(), item_id); + assert_eq!(item.base.parent_uuid(), object_id); + assert_eq!(item.base.name(), "Test Item"); + assert_eq!(item.asset_uuid(), asset_id); +} + +// parity-case: LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_PlainAssetId_ParsesWithoutDecryption::test 95f39928dae61bca86b7d0a0702307db6c5fdc754e51f73a24bd5ee131e6de3f translated +#[test] +fn plain_asset_id_parses_without_decryption() { + let object_id = uuid(); + let item_id = uuid(); + let asset_id = uuid(); + let body = format!( + "{{\"inventory_serial\":1,\"contents\":[{}]}}", + item_json(item_id, object_id, "asset_id", asset_id) + ); + let (client, _) = client_with_cap(response(200, body), true); + let result = block_on( + client + .inventory() + .get_task_inventory(object_id, 12_345, None, None), + ) + .expect("GetTaskInventoryAsync"); + assert_eq!(single::(&result).asset_uuid(), asset_id); +} + +// parity-case: LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_NonSuccessStatus_ReturnsContentsFolderOnly::test b8a25891064e470ac8d77ecd8a4847cf773b043de5ebeae275a9dd6669518585 translated +#[test] +fn non_success_status_returns_contents_folder_only() { + let object_id = uuid(); + let (client, _) = client_with_cap(response(500, String::new()), true); + let result = block_on( + client + .inventory() + .get_task_inventory(object_id, 12_345, None, None), + ) + .expect("GetTaskInventoryAsync"); + assert_eq!(result.len(), 1); + assert!(result[0].as_any().is::()); +} + +// parity-case: LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_NoCapability_DoesNotMakeHttpRequest::test c0c43ebcf781fb81b1fef7ce1dd2774e350d92ef882f49876f1a16d23a338592 translated +#[test] +fn no_capability_does_not_make_http_request() { + let (client, recording) = client_with_cap(response(404, String::new()), false); + let result = block_on(client.inventory().get_task_inventory( + uuid(), + 12_345, + None, + Some(cancellation_after(Duration::from_millis(50))), + )) + .expect("GetTaskInventoryAsync"); + assert!(result.is_empty()); + assert!(recording.requests().is_empty()); +} diff --git a/tests/upstream-tests.json b/tests/upstream-tests.json index a07d7af..268cffd 100644 --- a/tests/upstream-tests.json +++ b/tests/upstream-tests.json @@ -3,12 +3,12 @@ "upstream_commit": "2aa70bb68513b39795da5d13c88f31b86e85a3ba", "expected_cases": 1289, "report": { - "pending": 819, - "translated": 455, - "ignored_live": 11, + "pending": 779, + "translated": 488, + "ignored_live": 18, "benchmark": 4, "drifted": 0, - "unreviewed": 819 + "unreviewed": 779 }, "tests": [ { @@ -3035,12 +3035,12 @@ "body_sha256": "ac92e375efc45c50b37e6c82aea372d605fceb470ce053a025e05ff47a5c7121", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 5, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "07a1ee1d919d9912de931c8b143d992318e2dc8cd67e8fb1cb980c789313a5c8", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_ais_semantics.rs", + "rust_line": 120, + "rust_test": "inventory_ais_client_null_throws", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.GridManager_Null_Throws::test", @@ -3055,7 +3055,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 6, + "rust_line": 5, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -3073,12 +3073,12 @@ "body_sha256": "5e7498066c944800354abbc71eea825fe90d0c40a25a6065967a3ebcc9efea74", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 7, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "22efc969b59ea7def2d42b7a2afaf9022bf481f81c2367f4349e5cd2c0839095", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_manager_semantics.rs", + "rust_line": 16, + "rust_test": "inventory_manager_null_throws", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/ConstructorNullArgumentTests.cs::ConstructorNullArgumentTests.AppearanceManager_Null_Throws::test", @@ -3093,7 +3093,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 8, + "rust_line": 6, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -3112,7 +3112,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 9, + "rust_line": 7, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -3131,7 +3131,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 10, + "rust_line": 8, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -3150,7 +3150,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 11, + "rust_line": 9, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4026,7 +4026,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 12, + "rust_line": 10, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4047,7 +4047,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 13, + "rust_line": 11, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4068,7 +4068,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 14, + "rust_line": 12, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4089,7 +4089,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 15, + "rust_line": 13, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4110,7 +4110,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 16, + "rust_line": 14, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4131,7 +4131,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 17, + "rust_line": 15, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4153,7 +4153,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 18, + "rust_line": 16, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4174,7 +4174,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 19, + "rust_line": 17, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4195,7 +4195,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 20, + "rust_line": 18, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4216,7 +4216,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 21, + "rust_line": 19, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4237,7 +4237,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 22, + "rust_line": 20, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4258,7 +4258,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 23, + "rust_line": 21, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4279,7 +4279,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 24, + "rust_line": 22, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4300,7 +4300,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 25, + "rust_line": 23, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4321,7 +4321,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 26, + "rust_line": 24, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4342,7 +4342,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 27, + "rust_line": 25, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4363,7 +4363,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 28, + "rust_line": 26, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4384,7 +4384,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 29, + "rust_line": 27, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -4405,7 +4405,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 30, + "rust_line": 28, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -5198,12 +5198,12 @@ "body_sha256": "3ae365ed34f12d036dcd44c94f8568d163cfeec2a58b4975975b77b418770131", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 31, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "2a368a6de86bda8730c35954102e0c84dec19228d296cabdb962c1c3b64b087f", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_ais_semantics.rs", + "rust_line": 129, + "rust_test": "parse_links_object_asset_results_in_attachment_type_and_parses_fields", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseItemsFromEmbedded_ItemsKey_ParsesConcreteItems::test", @@ -5217,12 +5217,12 @@ "body_sha256": "d9e7c64106639071e1ec6ada7346bfa050a31183becaac79efefcd4755fe2855", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 32, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "1dcc2ca92d302fbba606cd5deb00a0cc560acacc7972a12498043fde5ccb46d0", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_ais_semantics.rs", + "rust_line": 160, + "rust_test": "parse_items_items_key_parses_concrete_items", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseLinksFromEmbedded_MeshAsset_TreatedAsAttachment::test", @@ -5236,12 +5236,12 @@ "body_sha256": "f807110d577c654128dd8d42e618c610c260c4f3367cf2795776564409f876a2", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 33, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "3e1a05e33cfcd32933e4b98018297f957518e5d43e2e0a9754b0ebc1c6ede6cc", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_ais_semantics.rs", + "rust_line": 182, + "rust_test": "parse_links_mesh_asset_treated_as_attachment", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseItemsFromEmbedded_TopLevelItemsKey_WorksWithoutEmbedded::test", @@ -5255,12 +5255,12 @@ "body_sha256": "9c8f2090d59ff5e75e75381a7283c501cadd56e591991cdead23c504738a0a6d", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 34, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "f72e017cfbad47f768ca7969f7b9795acd687c612819277f0ebccf63b2c3250a", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_ais_semantics.rs", + "rust_line": 211, + "rust_test": "parse_items_top_level_items_key_works_without_embedded", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseLinksFromEmbedded_TopLevelLinksKey_WorksWithoutEmbedded::test", @@ -5274,12 +5274,12 @@ "body_sha256": "29afd2bd6a554959d6cfa99b632672d56bbb5bcad2ccbaf8caf4773a514f5d79", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 35, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "238abce5084013466eefa9c4c945fdcef993da159b0c3052e9b7765b66d3d4a6", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_ais_semantics.rs", + "rust_line": 226, + "rust_test": "parse_links_top_level_links_key_works_without_embedded", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseItemsFromEmbedded_NullOrEmpty_ReturnsEmptyList::test", @@ -5293,12 +5293,12 @@ "body_sha256": "198fb619bbf396a4b1a7b4b85b7fba8808ae127e2575b2b84d21f01a2bdbc445", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 36, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "cfe030792a4e0aa4d4f3954e63a779b5db11724268aa5a11100522020d694a28", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_ais_semantics.rs", + "rust_line": 248, + "rust_test": "parse_items_null_or_empty_returns_empty_list", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.ParseEmbedded_CombinesItemsAndLinks::test", @@ -5312,12 +5312,12 @@ "body_sha256": "f2ebf4638c9aef3c846dc182d97d80c95118799428cf8c2bba86163e33196846", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 37, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "f052329ae5657b6329e631d5c57086b579d9dd145b209cc17de2e72814e9f223", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_ais_semantics.rs", + "rust_line": 264, + "rust_test": "parse_embedded_combines_items_and_links", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.MoveCategoryLinksAsync_AlwaysReturnsFalse::test", @@ -5331,12 +5331,12 @@ "body_sha256": "bebad05897efc0da2f959b4f567faa3ffee950520d13265ecbab1dee978f4886", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 38, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "aa9d1ef633dcdfe59ff44ee51536f231543e8d466d70d4587fa686305ef34074", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_ais_semantics.rs", + "rust_line": 284, + "rust_test": "move_category_links_always_returns_false", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryAISClientTests.cs::InventoryAISClientTests.MoveCategoryLinksAsync_ReturnsCompletedTask::test", @@ -5350,12 +5350,12 @@ "body_sha256": "f9830b11e6a75c90f8394a5ade56bbd542c140be4c050ba7db6c9ee4d2b7a699", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 39, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "bd82a765f85f73312e83d8ba3e56d717b570e131ddaea9c80f6286710a79ecb3", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_ais_semantics.rs", + "rust_line": 292, + "rust_test": "move_category_links_returns_completed_future", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventorySkeletonIsPopulatedAfterLogin::test", @@ -5372,12 +5372,12 @@ "RequiresLiveServer" ], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 40, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "0d172b916b50d6b4806461a0207a52e19008ad9841f6948946e37fe165bd0ccb", + "status": "ignored-live", + "rust_file": "tests/compat/tests/inventory_live_semantics.rs", + "rust_line": 88, + "rust_test": "inventory_skeleton_is_populated_after_login", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventoryRootContainsFolders::test", @@ -5394,12 +5394,12 @@ "RequiresLiveServer" ], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 41, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "c5e92e4569b2a8def32a7408ca55594396f97081d465daa05e0d2dd871e4e28f", + "status": "ignored-live", + "rust_file": "tests/compat/tests/inventory_live_semantics.rs", + "rust_line": 109, + "rust_test": "inventory_root_contains_folders", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventoryFolderContainsItems::test", @@ -5416,12 +5416,12 @@ "RequiresLiveServer" ], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 42, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "abbf0256a2aec499b6d904d546c64688f86deceb5e757710dc77d70e277bfe45", + "status": "ignored-live", + "rust_file": "tests/compat/tests/inventory_live_semantics.rs", + "rust_line": 143, + "rust_test": "inventory_folder_contains_items", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryFetchTests.cs::InventoryFetchTests.InventoryItemCanBeFetchedById::test", @@ -5438,12 +5438,12 @@ "RequiresLiveServer" ], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 43, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "4ca447223c5fb65d76170a38f85eaad35d70fbcc7505614161444ff5eee33e03", + "status": "ignored-live", + "rust_file": "tests/compat/tests/inventory_live_semantics.rs", + "rust_line": 196, + "rust_test": "inventory_item_can_be_fetched_by_id", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryManagerTests.cs::InventoryManagerTests.EncryptDecrypt_RoundTrip::test", @@ -5457,12 +5457,12 @@ "body_sha256": "7b59c330ffacf1174dd884f369a4e4015e1a212a0e43d7fa8889f7505dd5599d", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 44, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "ccfa4692b78f1e89c60c8500e9b386c598db96ea1570964ac370631dedf878e9", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_manager_semantics.rs", + "rust_line": 25, + "rust_test": "encrypt_decrypt_round_trip", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryManagerTests.cs::InventoryManagerTests.ItemCRC_IsDeterministic_AndChangesWhenFieldsChange::test", @@ -5476,12 +5476,12 @@ "body_sha256": "dbd322778ad7f110abce5f10a0c83ad002ae76f6a114fa795fb90a799f4ff077", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 45, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "0638e765649b82291d37c8c6aca6fc514fe834436104bff14eabdd217259226c", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_manager_semantics.rs", + "rust_line": 34, + "rust_test": "item_crc_is_deterministic_and_changes_when_fields_change", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryManagerTests.cs::InventoryManagerTests.CreateInventoryItem_ReturnsCorrectSubclass::test", @@ -5495,12 +5495,12 @@ "body_sha256": "219f8c91bc1b3d5b5d3e5b2f2880c5733fd02e6103ccc9c6ecbf8d03328274f6", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 46, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "c7f391ed772ce1fe1d4d1f6360598d2576ecdcfaab1b9290cabc080a9e83ae2c", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_manager_semantics.rs", + "rust_line": 60, + "rust_test": "create_inventory_item_returns_correct_subclass", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.AddAndGetItem::test", @@ -5514,12 +5514,12 @@ "body_sha256": "24702f0cf9215beee29123ee81dab4a7fe971beb197ecceac9a1761b695bce45", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 47, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "b9c5c45f28333a8a8e9e4bd48393d1130995af65940b11d8d003bdb689bca1f2", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_store_semantics.rs", + "rust_line": 72, + "rust_test": "add_and_get_item", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.UpdateItemParent::test", @@ -5533,12 +5533,12 @@ "body_sha256": "ea1a73e28fb92b873ee28102e81811d769b5cd815d2e1d756ece6ea635e5c014", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 48, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "047ac6c32ce51c84c80b9dfee3c6cce2a508afc54f9c7b6d06f31d4bef53e5bc", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_store_semantics.rs", + "rust_line": 103, + "rust_test": "update_item_parent", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.InventoryNodeModifyTime_SelfLoop::test", @@ -5552,12 +5552,12 @@ "body_sha256": "f8050cc284f7954c1301091ddc1cbf0fa76073806eee7de4f6cb21063591fbf1", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 49, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "58e3e8548e23370a368f75b03b002bac419738a145bd901f9d5126ab22195c46", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_store_semantics.rs", + "rust_line": 141, + "rust_test": "inventory_node_modify_time_self_loop", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.UpdateNodeFor_SelfLoop::test", @@ -5571,12 +5571,12 @@ "body_sha256": "14f42e5263c465e8534347c5a3195c195e2d90371dbc2f69d36a40362384505c", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 50, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "00c8ce002f4f252038857c7f2bd514fb3c5730a7dce5abe97c5614a5405e5a2f", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_store_semantics.rs", + "rust_line": 152, + "rust_test": "update_node_for_self_loop", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.UpdateNodeFor_ComplexSelfLoop::test", @@ -5590,12 +5590,12 @@ "body_sha256": "a2fc7b29b8a7a7767c42ea9c7fb9628451c88991c3eb1ecbd2ce0952ab0b5700", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 51, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "467d0899a5752f69ebaa4600bb639ce57dfc09dbe441302562009b3c82751c6a", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_store_semantics.rs", + "rust_line": 164, + "rust_test": "update_node_for_complex_self_loop", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.RemoveItem::test", @@ -5609,12 +5609,12 @@ "body_sha256": "1e72f9049b9114f0c56e152d84190d31bca7a862f7ad1459624d753beb6818b4", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 52, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "a978d5e8e7881a40955878c211e67019d843a31a805cb1861e4e6eda09539c70", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_store_semantics.rs", + "rust_line": 182, + "rust_test": "remove_item", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.SaveAndRestoreAsync::test", @@ -5628,12 +5628,12 @@ "body_sha256": "bf23b1c67cc9618713d2d8e6653f0ffbbf4c24d7f2c59c5dd639047f7e0c8156", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 53, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "7c24e170f023a533d910a1e72788b1c2ae187a96b658f216a7397ffa2356d565", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_store_semantics.rs", + "rust_line": 197, + "rust_test": "save_and_restore_async", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.GetNodeOrDefault_ReturnsNullWhenMissing::test", @@ -5647,12 +5647,12 @@ "body_sha256": "f5651b5a143470c3ab6ba1f835206a1a55a6218c28242dc12c5d6b5e89519596", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 54, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "edae6bc860b6cb7c37a2854a421536cff1a4832bed43a3df6d702c9f095ed54e", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_store_semantics.rs", + "rust_line": 227, + "rust_test": "get_node_or_default_returns_null_when_missing", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.TryGetValue_Generic::test", @@ -5666,12 +5666,12 @@ "body_sha256": "e6f6d6535af9d011e65cb3c297fe99543f85b64382c47e1756f051d6031886f5", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 55, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "b54520972d54d7822e5f3ea176a33405b52ddb67a7752a71ba1a20bcd9deb9eb", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_store_semantics.rs", + "rust_line": 239, + "rust_test": "try_get_value_generic", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.RemoveFolderRemovesAllDescendants::test", @@ -5685,12 +5685,12 @@ "body_sha256": "b537223d271b75c11adfa6d87c1e79bb29366f294657ddf71f236fab0dee009f", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 56, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "6849335f0dafc7deb1ff23dfd43ae33a2e4512a215210e0bf64739f91bffcdc7", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_store_semantics.rs", + "rust_line": 259, + "rust_test": "remove_folder_removes_all_descendants", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.DescendentCountUpdatesOnAddAndRemove::test", @@ -5704,12 +5704,12 @@ "body_sha256": "cfe6571887d0e992ff4d69ccbcdfb34012f9bb5d62118201c33d7d66cc9ddfd8", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 57, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "f1403b7a106cb6c188948f5756bd5b7624989fad5ea797eef48888b0dcf770c2", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_store_semantics.rs", + "rust_line": 282, + "rust_test": "descendent_count_updates_on_add_and_remove", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.MovingItemUpdatesAncestorDescendentCounts::test", @@ -5723,12 +5723,12 @@ "body_sha256": "1f4b4189694b9471d48562a434c91a9e455706b83b65bb855c0846388b44c759", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 58, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "9b9db9affe5c83d524712f940fc91571e947ad393651b99957872177da552286", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_store_semantics.rs", + "rust_line": 311, + "rust_test": "moving_item_updates_ancestor_descendent_counts", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.ConcurrentAddMoveRemoveStress::test", @@ -5742,12 +5742,12 @@ "body_sha256": "0b76b2fb62a6300e02a02859772f146f107caa77986f4d593e3a4d01966ab4e4", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 59, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "2e46016030fc78f462ef25bae0732b6a82849b5c8b22e8d22352882c0c9072ee", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_store_semantics.rs", + "rust_line": 357, + "rust_test": "concurrent_add_move_remove_stress", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.ConcurrentLinkAddRemoveStress::test", @@ -5761,12 +5761,12 @@ "body_sha256": "eef3b4eb300427800757dc6cac2dbd9202ed1cf1aac42565b3c26eb11e71bbf1", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 60, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "72dd67b732bcb1ee7bd6cd699bd55af4540cf67ea36cd27cbed5031b917d26cc", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_store_semantics.rs", + "rust_line": 440, + "rust_test": "concurrent_link_add_remove_stress", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/InventoryTests.cs::InventoryTests.LinkIndexUpdateOnAssetChange::test", @@ -5780,12 +5780,12 @@ "body_sha256": "d3e0066e06ab1c48520e5e0bbba8069b74f1a38d37e24d914392406b41b2ea0c", "categories": [], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 61, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "d67f3ee5e3e47f31cad2e05140bff10204c9417698429566b071587b3d22b67d", + "status": "translated", + "rust_file": "tests/compat/tests/inventory_store_semantics.rs", + "rust_line": 517, + "rust_test": "link_index_updates_on_asset_change", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/LibraryInventoryTests.cs::LibraryInventoryTests.LibraryFoldersArePopulatedAfterLogin::test", @@ -5802,12 +5802,12 @@ "RequiresLiveServer" ], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 62, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "41b60f140e94ef37cdace570f93a4705e8716774052337c9eb9e83c14ab7587b", + "status": "ignored-live", + "rust_file": "tests/compat/tests/inventory_live_semantics.rs", + "rust_line": 249, + "rust_test": "library_folders_are_populated_after_login", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/LibraryInventoryTests.cs::LibraryInventoryTests.LibraryFolderItemsCanBeFetched::test", @@ -5824,12 +5824,12 @@ "RequiresLiveServer" ], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 63, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "4d00e436da3b962d850c0f61f38ec6fa29c2be38356069609ded46bd4bea396e", + "status": "ignored-live", + "rust_file": "tests/compat/tests/inventory_live_semantics.rs", + "rust_line": 275, + "rust_test": "library_folder_items_can_be_fetched", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/LibraryInventoryTests.cs::LibraryInventoryTests.LibrarySubFolderContainsItems::test", @@ -5846,12 +5846,12 @@ "RequiresLiveServer" ], "fixture_dependencies": [], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 64, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "2b561419d5c5a33c396cda384ff9643fcf93b9afadb345d78c3dc38b194ac757", + "status": "ignored-live", + "rust_file": "tests/compat/tests/inventory_live_semantics.rs", + "rust_line": 309, + "rust_test": "library_sub_folder_contains_items", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/LindenSkeletonTests.cs::LindenSkeletonTests.BuildExpandedJointList_EmptyFilter_ReturnsEmptyList::test", @@ -6349,7 +6349,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 65, + "rust_line": 29, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6368,7 +6368,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 66, + "rust_line": 30, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6387,7 +6387,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 67, + "rust_line": 31, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6406,7 +6406,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 68, + "rust_line": 32, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6425,7 +6425,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 69, + "rust_line": 33, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6444,7 +6444,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 70, + "rust_line": 34, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6463,7 +6463,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 71, + "rust_line": 35, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6482,7 +6482,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 72, + "rust_line": 36, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6501,7 +6501,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 73, + "rust_line": 37, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6520,7 +6520,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 74, + "rust_line": 38, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6539,7 +6539,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 75, + "rust_line": 39, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6558,7 +6558,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 76, + "rust_line": 40, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6577,7 +6577,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 77, + "rust_line": 41, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6596,7 +6596,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 78, + "rust_line": 42, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6615,7 +6615,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 79, + "rust_line": 43, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6634,7 +6634,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 80, + "rust_line": 44, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6653,7 +6653,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 81, + "rust_line": 45, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6672,7 +6672,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 82, + "rust_line": 46, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6691,7 +6691,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 83, + "rust_line": 47, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6710,7 +6710,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 84, + "rust_line": 48, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6729,7 +6729,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 85, + "rust_line": 49, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6748,7 +6748,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 86, + "rust_line": 50, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6767,7 +6767,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 87, + "rust_line": 51, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6786,7 +6786,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 88, + "rust_line": 52, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6805,7 +6805,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 89, + "rust_line": 53, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6824,7 +6824,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 90, + "rust_line": 54, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6843,7 +6843,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 91, + "rust_line": 55, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6862,7 +6862,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 92, + "rust_line": 56, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6881,7 +6881,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 93, + "rust_line": 57, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6900,7 +6900,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 94, + "rust_line": 58, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6919,7 +6919,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 95, + "rust_line": 59, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6938,7 +6938,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 96, + "rust_line": 60, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6957,7 +6957,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 97, + "rust_line": 61, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6976,7 +6976,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 98, + "rust_line": 62, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -6997,7 +6997,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 99, + "rust_line": 63, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7018,7 +7018,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 100, + "rust_line": 64, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7039,7 +7039,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 101, + "rust_line": 65, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7060,7 +7060,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 102, + "rust_line": 66, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7081,7 +7081,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 103, + "rust_line": 67, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7102,7 +7102,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 104, + "rust_line": 68, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7123,7 +7123,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 105, + "rust_line": 69, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7144,7 +7144,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 106, + "rust_line": 70, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7165,7 +7165,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 107, + "rust_line": 71, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7186,7 +7186,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 108, + "rust_line": 72, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7207,7 +7207,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 109, + "rust_line": 73, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7228,7 +7228,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 110, + "rust_line": 74, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7249,7 +7249,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 111, + "rust_line": 75, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7270,7 +7270,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 112, + "rust_line": 76, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7291,7 +7291,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 113, + "rust_line": 77, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7312,7 +7312,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 114, + "rust_line": 78, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7333,7 +7333,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 115, + "rust_line": 79, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7354,7 +7354,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 116, + "rust_line": 80, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7375,7 +7375,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 117, + "rust_line": 81, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7396,7 +7396,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 118, + "rust_line": 82, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7417,7 +7417,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 119, + "rust_line": 83, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7438,7 +7438,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 120, + "rust_line": 84, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7459,7 +7459,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 121, + "rust_line": 85, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -7480,7 +7480,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 122, + "rust_line": 86, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -8195,7 +8195,7 @@ "rust_body_sha256": "b48d84917b12cabef8517fcf96adb543590063ff3b1fb9ed972f957fc73453a3", "status": "translated", "rust_file": "tests/compat/tests/misclassified_link_semantics.rs", - "rust_line": 22, + "rust_line": 26, "rust_test": "is_link_texture_item_with_link_asset_type_returns_true", "semantic_review": "reviewed" }, @@ -8216,7 +8216,7 @@ "rust_body_sha256": "7c58a391525dfdbc0846fda3bc27e92af98abeaba6034e277c7b5819bc255a21", "status": "translated", "rust_file": "tests/compat/tests/misclassified_link_semantics.rs", - "rust_line": 29, + "rust_line": 33, "rust_test": "is_link_normal_texture_returns_false", "semantic_review": "reviewed" }, @@ -8237,7 +8237,7 @@ "rust_body_sha256": "12dbee1efc8aef651e5be1babd011a571804d84133c343910ac14d29bfa18619", "status": "translated", "rust_file": "tests/compat/tests/misclassified_link_semantics.rs", - "rust_line": 38, + "rust_line": 42, "rust_test": "resolved_item_id_on_misclassified_texture_link_returns_asset_uuid", "semantic_review": "reviewed" }, @@ -8255,10 +8255,10 @@ "Inventory" ], "fixture_dependencies": [], - "rust_body_sha256": "ece652ee881b847eabd1cd489976627ca423a7a9657406d7422642490b935688", + "rust_body_sha256": "b53c1ec408d07c68b2c7f9cbd6e8470ee151e29c69de0893e6f149be4f655933", "status": "translated", "rust_file": "tests/compat/tests/misclassified_link_semantics.rs", - "rust_line": 46, + "rust_line": 50, "rust_test": "inventory_store_contains_finds_target_by_resolved_item_id", "semantic_review": "reviewed" }, @@ -8276,10 +8276,10 @@ "Inventory" ], "fixture_dependencies": [], - "rust_body_sha256": "1d94cb5c06decfe1d12baf6810cdd005ae31a5208daf51796dde6fddfc43b403", + "rust_body_sha256": "3484e4aaf21da0656e44054f4fe136e9223176f3f03f11d0102da7d6dd900e1e", "status": "translated", "rust_file": "tests/compat/tests/misclassified_link_semantics.rs", - "rust_line": 64, + "rust_line": 68, "rust_test": "inventory_store_indexer_returns_wearable_when_target_is_wearable", "semantic_review": "reviewed" }, @@ -8297,10 +8297,10 @@ "Inventory" ], "fixture_dependencies": [], - "rust_body_sha256": "5714620093be8d30ffc00439c5d28f6193d444450908179cf33a1bf801798d0c", + "rust_body_sha256": "ec0558ad38e4d2393656e1d71ba588dfa2403b15b66c625b44bd81e85f9e6100", "status": "translated", "rust_file": "tests/compat/tests/misclassified_link_semantics.rs", - "rust_line": 86, + "rust_line": 90, "rust_test": "inventory_store_indexer_returns_attachment_when_target_is_attachment", "semantic_review": "reviewed" }, @@ -8318,10 +8318,10 @@ "Inventory" ], "fixture_dependencies": [], - "rust_body_sha256": "0bde42cf5c24583eedeb36e816db6040b1d2a640e874f9e4d3cc40ec5dc3b813", + "rust_body_sha256": "3d84a7af2b55b070b7fbf4e789cec75503e664e4f12b152f47c5a104e1129b48", "status": "translated", "rust_file": "tests/compat/tests/misclassified_link_semantics.rs", - "rust_line": 110, + "rust_line": 114, "rust_test": "inventory_store_indexer_returns_object_when_target_is_object", "semantic_review": "reviewed" }, @@ -8342,7 +8342,7 @@ "rust_body_sha256": "b075befdc75394711eedf916c0569ff7f2efffa7d51e07da5080447c16ae7554", "status": "translated", "rust_file": "tests/compat/tests/misclassified_link_semantics.rs", - "rust_line": 132, + "rust_line": 136, "rust_test": "inventory_store_not_contains_when_target_absent", "semantic_review": "reviewed" }, @@ -8945,7 +8945,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 123, + "rust_line": 87, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -8966,7 +8966,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 124, + "rust_line": 88, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9065,7 +9065,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 125, + "rust_line": 89, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9084,7 +9084,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 126, + "rust_line": 90, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9103,7 +9103,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 127, + "rust_line": 91, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9122,7 +9122,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 128, + "rust_line": 92, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9141,7 +9141,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 129, + "rust_line": 93, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9160,7 +9160,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 130, + "rust_line": 94, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9179,7 +9179,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 131, + "rust_line": 95, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9198,7 +9198,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 132, + "rust_line": 96, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9217,7 +9217,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 133, + "rust_line": 97, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9236,7 +9236,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 134, + "rust_line": 98, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9255,7 +9255,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 135, + "rust_line": 99, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9274,7 +9274,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 136, + "rust_line": 100, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9293,7 +9293,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 137, + "rust_line": 101, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9312,7 +9312,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 138, + "rust_line": 102, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9331,7 +9331,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 139, + "rust_line": 103, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9350,7 +9350,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 140, + "rust_line": 104, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9371,7 +9371,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 141, + "rust_line": 105, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9392,7 +9392,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 142, + "rust_line": 106, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9641,7 +9641,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 143, + "rust_line": 107, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9662,7 +9662,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 144, + "rust_line": 108, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9683,7 +9683,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 145, + "rust_line": 109, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9704,7 +9704,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 146, + "rust_line": 110, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9725,7 +9725,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 147, + "rust_line": 111, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9746,7 +9746,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 148, + "rust_line": 112, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9768,7 +9768,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 149, + "rust_line": 113, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9790,7 +9790,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 150, + "rust_line": 114, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9812,7 +9812,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 151, + "rust_line": 115, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9834,7 +9834,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 152, + "rust_line": 116, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9856,7 +9856,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 153, + "rust_line": 117, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9878,7 +9878,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 154, + "rust_line": 118, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9900,7 +9900,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 155, + "rust_line": 119, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9922,7 +9922,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 156, + "rust_line": 120, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9944,7 +9944,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 157, + "rust_line": 121, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9966,7 +9966,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 158, + "rust_line": 122, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -9988,7 +9988,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 159, + "rust_line": 123, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10010,7 +10010,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 160, + "rust_line": 124, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10032,7 +10032,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 161, + "rust_line": 125, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10054,7 +10054,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 162, + "rust_line": 126, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10076,7 +10076,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 163, + "rust_line": 127, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10098,7 +10098,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 164, + "rust_line": 128, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10120,7 +10120,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 165, + "rust_line": 129, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10142,7 +10142,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 166, + "rust_line": 130, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10164,7 +10164,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 167, + "rust_line": 131, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10186,7 +10186,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 168, + "rust_line": 132, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10208,7 +10208,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 169, + "rust_line": 133, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10230,7 +10230,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 170, + "rust_line": 134, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10252,7 +10252,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 171, + "rust_line": 135, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10274,7 +10274,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 172, + "rust_line": 136, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10296,7 +10296,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 173, + "rust_line": 137, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10318,7 +10318,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 174, + "rust_line": 138, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10340,7 +10340,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 175, + "rust_line": 139, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10362,7 +10362,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 176, + "rust_line": 140, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10384,7 +10384,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 177, + "rust_line": 141, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10406,7 +10406,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 178, + "rust_line": 142, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10428,7 +10428,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 179, + "rust_line": 143, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10450,7 +10450,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 180, + "rust_line": 144, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10472,7 +10472,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 181, + "rust_line": 145, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10494,7 +10494,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 182, + "rust_line": 146, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10516,7 +10516,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 183, + "rust_line": 147, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10538,7 +10538,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 184, + "rust_line": 148, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10560,7 +10560,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 185, + "rust_line": 149, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10582,7 +10582,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 186, + "rust_line": 150, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10604,7 +10604,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 187, + "rust_line": 151, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10626,7 +10626,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 188, + "rust_line": 152, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10648,7 +10648,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 189, + "rust_line": 153, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10670,7 +10670,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 190, + "rust_line": 154, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10692,7 +10692,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 191, + "rust_line": 155, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10714,7 +10714,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 192, + "rust_line": 156, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10736,7 +10736,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 193, + "rust_line": 157, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10758,7 +10758,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 194, + "rust_line": 158, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10780,7 +10780,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 195, + "rust_line": 159, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10802,7 +10802,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 196, + "rust_line": 160, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10824,7 +10824,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 197, + "rust_line": 161, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10846,7 +10846,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 198, + "rust_line": 162, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10868,7 +10868,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 199, + "rust_line": 163, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10890,7 +10890,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 200, + "rust_line": 164, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10912,7 +10912,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 201, + "rust_line": 165, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10934,7 +10934,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 202, + "rust_line": 166, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10956,7 +10956,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 203, + "rust_line": 167, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -10978,7 +10978,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 204, + "rust_line": 168, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11000,7 +11000,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 205, + "rust_line": 169, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11022,7 +11022,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 206, + "rust_line": 170, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11044,7 +11044,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 207, + "rust_line": 171, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11066,7 +11066,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 208, + "rust_line": 172, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11088,7 +11088,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 209, + "rust_line": 173, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11110,7 +11110,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 210, + "rust_line": 174, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11132,7 +11132,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 211, + "rust_line": 175, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11154,7 +11154,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 212, + "rust_line": 176, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11176,7 +11176,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 213, + "rust_line": 177, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11198,7 +11198,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 214, + "rust_line": 178, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11220,7 +11220,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 215, + "rust_line": 179, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11242,7 +11242,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 216, + "rust_line": 180, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11264,7 +11264,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 217, + "rust_line": 181, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11285,7 +11285,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 218, + "rust_line": 182, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11306,7 +11306,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 219, + "rust_line": 183, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11327,7 +11327,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 220, + "rust_line": 184, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11348,7 +11348,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 221, + "rust_line": 185, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11370,7 +11370,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 222, + "rust_line": 186, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11392,7 +11392,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 223, + "rust_line": 187, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11414,7 +11414,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 224, + "rust_line": 188, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11436,7 +11436,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 225, + "rust_line": 189, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11458,7 +11458,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 226, + "rust_line": 190, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11480,7 +11480,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 227, + "rust_line": 191, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11502,7 +11502,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 228, + "rust_line": 192, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11524,7 +11524,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 229, + "rust_line": 193, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11546,7 +11546,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 230, + "rust_line": 194, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11568,7 +11568,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 231, + "rust_line": 195, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11590,7 +11590,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 232, + "rust_line": 196, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11612,7 +11612,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 233, + "rust_line": 197, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11634,7 +11634,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 234, + "rust_line": 198, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11656,7 +11656,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 235, + "rust_line": 199, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11678,7 +11678,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 236, + "rust_line": 200, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11700,7 +11700,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 237, + "rust_line": 201, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11722,7 +11722,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 238, + "rust_line": 202, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11744,7 +11744,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 239, + "rust_line": 203, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11766,7 +11766,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 240, + "rust_line": 204, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11788,7 +11788,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 241, + "rust_line": 205, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11810,7 +11810,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 242, + "rust_line": 206, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11832,7 +11832,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 243, + "rust_line": 207, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11854,7 +11854,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 244, + "rust_line": 208, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11876,7 +11876,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 245, + "rust_line": 209, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11898,7 +11898,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 246, + "rust_line": 210, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11920,7 +11920,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 247, + "rust_line": 211, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11942,7 +11942,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 248, + "rust_line": 212, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11964,7 +11964,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 249, + "rust_line": 213, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -11986,7 +11986,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 250, + "rust_line": 214, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12008,7 +12008,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 251, + "rust_line": 215, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12030,7 +12030,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 252, + "rust_line": 216, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12052,7 +12052,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 253, + "rust_line": 217, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12074,7 +12074,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 254, + "rust_line": 218, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12096,7 +12096,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 255, + "rust_line": 219, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12118,7 +12118,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 256, + "rust_line": 220, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12140,7 +12140,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 257, + "rust_line": 221, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12162,7 +12162,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 258, + "rust_line": 222, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12184,7 +12184,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 259, + "rust_line": 223, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12206,7 +12206,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 260, + "rust_line": 224, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12228,7 +12228,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 261, + "rust_line": 225, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12250,7 +12250,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 262, + "rust_line": 226, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12272,7 +12272,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 263, + "rust_line": 227, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12294,7 +12294,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 264, + "rust_line": 228, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12316,7 +12316,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 265, + "rust_line": 229, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12338,7 +12338,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 266, + "rust_line": 230, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12360,7 +12360,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 267, + "rust_line": 231, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12382,7 +12382,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 268, + "rust_line": 232, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12404,7 +12404,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 269, + "rust_line": 233, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12426,7 +12426,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 270, + "rust_line": 234, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12448,7 +12448,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 271, + "rust_line": 235, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12470,7 +12470,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 272, + "rust_line": 236, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12492,7 +12492,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 273, + "rust_line": 237, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12514,7 +12514,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 274, + "rust_line": 238, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12536,7 +12536,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 275, + "rust_line": 239, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12558,7 +12558,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 276, + "rust_line": 240, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12580,7 +12580,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 277, + "rust_line": 241, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12602,7 +12602,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 278, + "rust_line": 242, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12624,7 +12624,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 279, + "rust_line": 243, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12646,7 +12646,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 280, + "rust_line": 244, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12668,7 +12668,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 281, + "rust_line": 245, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12690,7 +12690,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 282, + "rust_line": 246, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12712,7 +12712,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 283, + "rust_line": 247, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12734,7 +12734,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 284, + "rust_line": 248, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12756,7 +12756,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 285, + "rust_line": 249, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12778,7 +12778,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 286, + "rust_line": 250, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12800,7 +12800,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 287, + "rust_line": 251, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12822,7 +12822,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 288, + "rust_line": 252, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12844,7 +12844,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 289, + "rust_line": 253, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12866,7 +12866,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 290, + "rust_line": 254, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12888,7 +12888,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 291, + "rust_line": 255, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12910,7 +12910,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 292, + "rust_line": 256, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12932,7 +12932,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 293, + "rust_line": 257, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12954,7 +12954,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 294, + "rust_line": 258, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12976,7 +12976,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 295, + "rust_line": 259, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -12998,7 +12998,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 296, + "rust_line": 260, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13020,7 +13020,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 297, + "rust_line": 261, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13042,7 +13042,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 298, + "rust_line": 262, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13064,7 +13064,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 299, + "rust_line": 263, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13086,7 +13086,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 300, + "rust_line": 264, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13108,7 +13108,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 301, + "rust_line": 265, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13130,7 +13130,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 302, + "rust_line": 266, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13152,7 +13152,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 303, + "rust_line": 267, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13174,7 +13174,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 304, + "rust_line": 268, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13196,7 +13196,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 305, + "rust_line": 269, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13218,7 +13218,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 306, + "rust_line": 270, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13240,7 +13240,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 307, + "rust_line": 271, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13262,7 +13262,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 308, + "rust_line": 272, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13284,7 +13284,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 309, + "rust_line": 273, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13306,7 +13306,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 310, + "rust_line": 274, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13327,7 +13327,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 311, + "rust_line": 275, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13348,7 +13348,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 312, + "rust_line": 276, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13369,7 +13369,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 313, + "rust_line": 277, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13390,7 +13390,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 314, + "rust_line": 278, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13411,7 +13411,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 315, + "rust_line": 279, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13432,7 +13432,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 316, + "rust_line": 280, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13453,7 +13453,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 317, + "rust_line": 281, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13474,7 +13474,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 318, + "rust_line": 282, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13495,7 +13495,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 319, + "rust_line": 283, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13516,7 +13516,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 320, + "rust_line": 284, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13537,7 +13537,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 321, + "rust_line": 285, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13558,7 +13558,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 322, + "rust_line": 286, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13579,7 +13579,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 323, + "rust_line": 287, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13600,7 +13600,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 324, + "rust_line": 288, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13621,7 +13621,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 325, + "rust_line": 289, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13642,7 +13642,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 326, + "rust_line": 290, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13663,7 +13663,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 327, + "rust_line": 291, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13684,7 +13684,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 328, + "rust_line": 292, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13705,7 +13705,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 329, + "rust_line": 293, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13726,7 +13726,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 330, + "rust_line": 294, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13747,7 +13747,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 331, + "rust_line": 295, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13768,7 +13768,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 332, + "rust_line": 296, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13789,7 +13789,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 333, + "rust_line": 297, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13810,7 +13810,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 334, + "rust_line": 298, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13831,7 +13831,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 335, + "rust_line": 299, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13852,7 +13852,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 336, + "rust_line": 300, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13873,7 +13873,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 337, + "rust_line": 301, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13894,7 +13894,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 338, + "rust_line": 302, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13915,7 +13915,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 339, + "rust_line": 303, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13936,7 +13936,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 340, + "rust_line": 304, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13958,7 +13958,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 341, + "rust_line": 305, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -13980,7 +13980,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 342, + "rust_line": 306, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14002,7 +14002,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 343, + "rust_line": 307, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14024,7 +14024,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 344, + "rust_line": 308, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14046,7 +14046,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 345, + "rust_line": 309, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14067,7 +14067,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 346, + "rust_line": 310, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14089,7 +14089,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 347, + "rust_line": 311, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14111,7 +14111,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 348, + "rust_line": 312, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14133,7 +14133,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 349, + "rust_line": 313, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14155,7 +14155,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 350, + "rust_line": 314, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14177,7 +14177,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 351, + "rust_line": 315, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14198,7 +14198,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 352, + "rust_line": 316, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14219,7 +14219,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 353, + "rust_line": 317, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14240,7 +14240,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 354, + "rust_line": 318, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14261,7 +14261,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 355, + "rust_line": 319, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14282,7 +14282,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 356, + "rust_line": 320, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14303,7 +14303,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 357, + "rust_line": 321, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14324,7 +14324,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 358, + "rust_line": 322, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14345,7 +14345,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 359, + "rust_line": 323, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14366,7 +14366,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 360, + "rust_line": 324, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14387,7 +14387,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 361, + "rust_line": 325, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14408,7 +14408,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 362, + "rust_line": 326, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14429,7 +14429,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 363, + "rust_line": 327, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14450,7 +14450,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 364, + "rust_line": 328, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14471,7 +14471,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 365, + "rust_line": 329, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14492,7 +14492,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 366, + "rust_line": 330, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14513,7 +14513,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 367, + "rust_line": 331, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14534,7 +14534,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 368, + "rust_line": 332, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14555,7 +14555,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 369, + "rust_line": 333, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14576,7 +14576,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 370, + "rust_line": 334, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14597,7 +14597,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 371, + "rust_line": 335, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14618,7 +14618,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 372, + "rust_line": 336, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14639,7 +14639,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 373, + "rust_line": 337, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14660,7 +14660,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 374, + "rust_line": 338, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14681,7 +14681,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 375, + "rust_line": 339, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14702,7 +14702,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 376, + "rust_line": 340, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14723,7 +14723,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 377, + "rust_line": 341, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14744,7 +14744,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 378, + "rust_line": 342, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14765,7 +14765,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 379, + "rust_line": 343, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14786,7 +14786,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 380, + "rust_line": 344, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14807,7 +14807,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 381, + "rust_line": 345, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14828,7 +14828,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 382, + "rust_line": 346, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14849,7 +14849,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 383, + "rust_line": 347, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14870,7 +14870,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 384, + "rust_line": 348, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14891,7 +14891,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 385, + "rust_line": 349, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14912,7 +14912,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 386, + "rust_line": 350, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14933,7 +14933,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 387, + "rust_line": 351, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14954,7 +14954,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 388, + "rust_line": 352, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14975,7 +14975,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 389, + "rust_line": 353, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -14996,7 +14996,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 390, + "rust_line": 354, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15017,7 +15017,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 391, + "rust_line": 355, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15038,7 +15038,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 392, + "rust_line": 356, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15059,7 +15059,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 393, + "rust_line": 357, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15080,7 +15080,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 394, + "rust_line": 358, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15101,7 +15101,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 395, + "rust_line": 359, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15122,7 +15122,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 396, + "rust_line": 360, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15143,7 +15143,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 397, + "rust_line": 361, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15164,7 +15164,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 398, + "rust_line": 362, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15185,7 +15185,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 399, + "rust_line": 363, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15206,7 +15206,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 400, + "rust_line": 364, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15227,7 +15227,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 401, + "rust_line": 365, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15248,7 +15248,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 402, + "rust_line": 366, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15269,7 +15269,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 403, + "rust_line": 367, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15290,7 +15290,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 404, + "rust_line": 368, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15311,7 +15311,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 405, + "rust_line": 369, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15332,7 +15332,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 406, + "rust_line": 370, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15353,7 +15353,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 407, + "rust_line": 371, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15374,7 +15374,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 408, + "rust_line": 372, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15395,7 +15395,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 409, + "rust_line": 373, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15416,7 +15416,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 410, + "rust_line": 374, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15437,7 +15437,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 411, + "rust_line": 375, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15458,7 +15458,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 412, + "rust_line": 376, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15479,7 +15479,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 413, + "rust_line": 377, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15500,7 +15500,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 414, + "rust_line": 378, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15521,7 +15521,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 415, + "rust_line": 379, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15542,7 +15542,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 416, + "rust_line": 380, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15563,7 +15563,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 417, + "rust_line": 381, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15585,7 +15585,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 418, + "rust_line": 382, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15607,7 +15607,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 419, + "rust_line": 383, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15629,7 +15629,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 420, + "rust_line": 384, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15651,7 +15651,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 421, + "rust_line": 385, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15673,7 +15673,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 422, + "rust_line": 386, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15695,7 +15695,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 423, + "rust_line": 387, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15717,7 +15717,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 424, + "rust_line": 388, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15739,7 +15739,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 425, + "rust_line": 389, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15761,7 +15761,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 426, + "rust_line": 390, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15783,7 +15783,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 427, + "rust_line": 391, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15805,7 +15805,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 428, + "rust_line": 392, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15827,7 +15827,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 429, + "rust_line": 393, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15848,7 +15848,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 430, + "rust_line": 394, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15869,7 +15869,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 431, + "rust_line": 395, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15890,7 +15890,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 432, + "rust_line": 396, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15911,7 +15911,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 433, + "rust_line": 397, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15932,7 +15932,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 434, + "rust_line": 398, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15953,7 +15953,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 435, + "rust_line": 399, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15974,7 +15974,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 436, + "rust_line": 400, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -15995,7 +15995,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 437, + "rust_line": 401, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16016,7 +16016,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 438, + "rust_line": 402, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16037,7 +16037,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 439, + "rust_line": 403, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16058,7 +16058,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 440, + "rust_line": 404, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16079,7 +16079,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 441, + "rust_line": 405, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16100,7 +16100,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 442, + "rust_line": 406, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16122,7 +16122,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 443, + "rust_line": 407, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16144,7 +16144,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 444, + "rust_line": 408, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16166,7 +16166,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 445, + "rust_line": 409, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16188,7 +16188,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 446, + "rust_line": 410, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16210,7 +16210,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 447, + "rust_line": 411, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16232,7 +16232,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 448, + "rust_line": 412, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16254,7 +16254,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 449, + "rust_line": 413, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16276,7 +16276,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 450, + "rust_line": 414, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16298,7 +16298,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 451, + "rust_line": 415, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16320,7 +16320,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 452, + "rust_line": 416, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16342,7 +16342,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 453, + "rust_line": 417, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16364,7 +16364,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 454, + "rust_line": 418, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16386,7 +16386,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 455, + "rust_line": 419, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16408,7 +16408,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 456, + "rust_line": 420, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16430,7 +16430,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 457, + "rust_line": 421, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16452,7 +16452,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 458, + "rust_line": 422, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16474,7 +16474,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 459, + "rust_line": 423, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16496,7 +16496,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 460, + "rust_line": 424, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16518,7 +16518,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 461, + "rust_line": 425, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16540,7 +16540,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 462, + "rust_line": 426, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16562,7 +16562,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 463, + "rust_line": 427, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16584,7 +16584,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 464, + "rust_line": 428, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16606,7 +16606,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 465, + "rust_line": 429, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16628,7 +16628,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 466, + "rust_line": 430, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16650,7 +16650,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 467, + "rust_line": 431, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16671,7 +16671,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 468, + "rust_line": 432, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16692,7 +16692,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 469, + "rust_line": 433, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16713,7 +16713,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 470, + "rust_line": 434, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16734,7 +16734,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 471, + "rust_line": 435, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16755,7 +16755,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 472, + "rust_line": 436, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16776,7 +16776,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 473, + "rust_line": 437, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16797,7 +16797,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 474, + "rust_line": 438, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16818,7 +16818,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 475, + "rust_line": 439, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16839,7 +16839,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 476, + "rust_line": 440, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16860,7 +16860,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 477, + "rust_line": 441, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16881,7 +16881,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 478, + "rust_line": 442, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16902,7 +16902,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 479, + "rust_line": 443, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16923,7 +16923,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 480, + "rust_line": 444, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16944,7 +16944,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 481, + "rust_line": 445, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16965,7 +16965,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 482, + "rust_line": 446, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -16986,7 +16986,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 483, + "rust_line": 447, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17007,7 +17007,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 484, + "rust_line": 448, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17028,7 +17028,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 485, + "rust_line": 449, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17049,7 +17049,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 486, + "rust_line": 450, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17070,7 +17070,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 487, + "rust_line": 451, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17091,7 +17091,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 488, + "rust_line": 452, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17112,7 +17112,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 489, + "rust_line": 453, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17133,7 +17133,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 490, + "rust_line": 454, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17154,7 +17154,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 491, + "rust_line": 455, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17175,7 +17175,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 492, + "rust_line": 456, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17196,7 +17196,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 493, + "rust_line": 457, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17217,7 +17217,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 494, + "rust_line": 458, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17238,7 +17238,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 495, + "rust_line": 459, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17259,7 +17259,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 496, + "rust_line": 460, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17280,7 +17280,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 497, + "rust_line": 461, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17301,7 +17301,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 498, + "rust_line": 462, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17322,7 +17322,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 499, + "rust_line": 463, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17343,7 +17343,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 500, + "rust_line": 464, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17364,7 +17364,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 501, + "rust_line": 465, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17385,7 +17385,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 502, + "rust_line": 466, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17406,7 +17406,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 503, + "rust_line": 467, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17427,7 +17427,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 504, + "rust_line": 468, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17448,7 +17448,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 505, + "rust_line": 469, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17469,7 +17469,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 506, + "rust_line": 470, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17491,7 +17491,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 507, + "rust_line": 471, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17513,7 +17513,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 508, + "rust_line": 472, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17535,7 +17535,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 509, + "rust_line": 473, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17557,7 +17557,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 510, + "rust_line": 474, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17578,7 +17578,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 511, + "rust_line": 475, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17599,7 +17599,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 512, + "rust_line": 476, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17621,7 +17621,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 513, + "rust_line": 477, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17643,7 +17643,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 514, + "rust_line": 478, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17665,7 +17665,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 515, + "rust_line": 479, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17687,7 +17687,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 516, + "rust_line": 480, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17709,7 +17709,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 517, + "rust_line": 481, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17731,7 +17731,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 518, + "rust_line": 482, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17753,7 +17753,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 519, + "rust_line": 483, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17775,7 +17775,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 520, + "rust_line": 484, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17797,7 +17797,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 521, + "rust_line": 485, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17819,7 +17819,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 522, + "rust_line": 486, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17841,7 +17841,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 523, + "rust_line": 487, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17863,7 +17863,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 524, + "rust_line": 488, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17884,7 +17884,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 525, + "rust_line": 489, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17905,7 +17905,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 526, + "rust_line": 490, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17926,7 +17926,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 527, + "rust_line": 491, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17947,7 +17947,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 528, + "rust_line": 492, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17969,7 +17969,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 529, + "rust_line": 493, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -17991,7 +17991,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 530, + "rust_line": 494, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18013,7 +18013,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 531, + "rust_line": 495, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18035,7 +18035,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 532, + "rust_line": 496, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18057,7 +18057,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 533, + "rust_line": 497, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18079,7 +18079,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 534, + "rust_line": 498, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18100,7 +18100,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 535, + "rust_line": 499, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18121,7 +18121,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 536, + "rust_line": 500, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18142,7 +18142,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 537, + "rust_line": 501, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18164,7 +18164,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 538, + "rust_line": 502, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18186,7 +18186,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 539, + "rust_line": 503, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18208,7 +18208,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 540, + "rust_line": 504, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18230,7 +18230,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 541, + "rust_line": 505, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18252,7 +18252,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 542, + "rust_line": 506, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18274,7 +18274,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 543, + "rust_line": 507, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18295,7 +18295,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 544, + "rust_line": 508, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18316,7 +18316,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 545, + "rust_line": 509, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18337,7 +18337,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 546, + "rust_line": 510, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18358,7 +18358,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 547, + "rust_line": 511, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18379,7 +18379,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 548, + "rust_line": 512, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18400,7 +18400,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 549, + "rust_line": 513, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18421,7 +18421,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 550, + "rust_line": 514, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18442,7 +18442,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 551, + "rust_line": 515, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18463,7 +18463,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 552, + "rust_line": 516, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18484,7 +18484,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 553, + "rust_line": 517, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18505,7 +18505,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 554, + "rust_line": 518, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18526,7 +18526,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 555, + "rust_line": 519, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18547,7 +18547,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 556, + "rust_line": 520, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18568,7 +18568,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 557, + "rust_line": 521, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18589,7 +18589,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 558, + "rust_line": 522, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18610,7 +18610,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 559, + "rust_line": 523, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18631,7 +18631,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 560, + "rust_line": 524, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18652,7 +18652,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 561, + "rust_line": 525, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18673,7 +18673,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 562, + "rust_line": 526, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18694,7 +18694,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 563, + "rust_line": 527, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18715,7 +18715,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 564, + "rust_line": 528, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18736,7 +18736,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 565, + "rust_line": 529, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18757,7 +18757,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 566, + "rust_line": 530, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18778,7 +18778,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 567, + "rust_line": 531, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18799,7 +18799,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 568, + "rust_line": 532, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18820,7 +18820,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 569, + "rust_line": 533, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18841,7 +18841,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 570, + "rust_line": 534, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18862,7 +18862,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 571, + "rust_line": 535, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18883,7 +18883,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 572, + "rust_line": 536, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18904,7 +18904,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 573, + "rust_line": 537, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18925,7 +18925,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 574, + "rust_line": 538, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18946,7 +18946,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 575, + "rust_line": 539, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18968,7 +18968,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 576, + "rust_line": 540, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -18990,7 +18990,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 577, + "rust_line": 541, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19012,7 +19012,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 578, + "rust_line": 542, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19034,7 +19034,7 @@ "LibreMetaverse.Tests/RLV/SampleInventoryTree.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 579, + "rust_line": 543, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19055,7 +19055,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 580, + "rust_line": 544, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19076,7 +19076,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 581, + "rust_line": 545, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19097,7 +19097,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 582, + "rust_line": 546, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19118,7 +19118,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 583, + "rust_line": 547, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19139,7 +19139,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 584, + "rust_line": 548, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19160,7 +19160,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 585, + "rust_line": 549, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19181,7 +19181,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 586, + "rust_line": 550, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19202,7 +19202,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 587, + "rust_line": 551, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19223,7 +19223,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 588, + "rust_line": 552, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19244,7 +19244,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 589, + "rust_line": 553, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19265,7 +19265,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 590, + "rust_line": 554, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19286,7 +19286,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 591, + "rust_line": 555, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19307,7 +19307,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 592, + "rust_line": 556, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19328,7 +19328,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 593, + "rust_line": 557, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19349,7 +19349,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 594, + "rust_line": 558, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19370,7 +19370,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 595, + "rust_line": 559, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19391,7 +19391,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 596, + "rust_line": 560, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19412,7 +19412,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 597, + "rust_line": 561, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19433,7 +19433,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 598, + "rust_line": 562, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19454,7 +19454,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 599, + "rust_line": 563, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19475,7 +19475,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 600, + "rust_line": 564, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19496,7 +19496,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 601, + "rust_line": 565, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19517,7 +19517,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 602, + "rust_line": 566, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19538,7 +19538,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 603, + "rust_line": 567, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19559,7 +19559,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 604, + "rust_line": 568, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19580,7 +19580,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 605, + "rust_line": 569, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19601,7 +19601,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 606, + "rust_line": 570, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19622,7 +19622,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 607, + "rust_line": 571, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19643,7 +19643,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 608, + "rust_line": 572, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19664,7 +19664,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 609, + "rust_line": 573, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19685,7 +19685,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 610, + "rust_line": 574, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19706,7 +19706,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 611, + "rust_line": 575, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19727,7 +19727,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 612, + "rust_line": 576, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19748,7 +19748,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 613, + "rust_line": 577, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19769,7 +19769,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 614, + "rust_line": 578, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19790,7 +19790,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 615, + "rust_line": 579, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19811,7 +19811,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 616, + "rust_line": 580, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19832,7 +19832,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 617, + "rust_line": 581, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19853,7 +19853,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 618, + "rust_line": 582, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19874,7 +19874,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 619, + "rust_line": 583, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19895,7 +19895,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 620, + "rust_line": 584, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19916,7 +19916,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 621, + "rust_line": 585, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19937,7 +19937,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 622, + "rust_line": 586, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19958,7 +19958,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 623, + "rust_line": 587, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -19979,7 +19979,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 624, + "rust_line": 588, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20000,7 +20000,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 625, + "rust_line": 589, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20021,7 +20021,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 626, + "rust_line": 590, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20042,7 +20042,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 627, + "rust_line": 591, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20063,7 +20063,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 628, + "rust_line": 592, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20084,7 +20084,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 629, + "rust_line": 593, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20105,7 +20105,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 630, + "rust_line": 594, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20126,7 +20126,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 631, + "rust_line": 595, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20147,7 +20147,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 632, + "rust_line": 596, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20168,7 +20168,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 633, + "rust_line": 597, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20189,7 +20189,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 634, + "rust_line": 598, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20210,7 +20210,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 635, + "rust_line": 599, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20231,7 +20231,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 636, + "rust_line": 600, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20252,7 +20252,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 637, + "rust_line": 601, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20273,7 +20273,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 638, + "rust_line": 602, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20294,7 +20294,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 639, + "rust_line": 603, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20315,7 +20315,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 640, + "rust_line": 604, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20336,7 +20336,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 641, + "rust_line": 605, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20357,7 +20357,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 642, + "rust_line": 606, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20378,7 +20378,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 643, + "rust_line": 607, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20399,7 +20399,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 644, + "rust_line": 608, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20420,7 +20420,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 645, + "rust_line": 609, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20441,7 +20441,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 646, + "rust_line": 610, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20462,7 +20462,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 647, + "rust_line": 611, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20483,7 +20483,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 648, + "rust_line": 612, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20504,7 +20504,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 649, + "rust_line": 613, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20525,7 +20525,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 650, + "rust_line": 614, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20546,7 +20546,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 651, + "rust_line": 615, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20567,7 +20567,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 652, + "rust_line": 616, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20588,7 +20588,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 653, + "rust_line": 617, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20609,7 +20609,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 654, + "rust_line": 618, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20630,7 +20630,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 655, + "rust_line": 619, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20651,7 +20651,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 656, + "rust_line": 620, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20672,7 +20672,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 657, + "rust_line": 621, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20693,7 +20693,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 658, + "rust_line": 622, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20714,7 +20714,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 659, + "rust_line": 623, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20735,7 +20735,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 660, + "rust_line": 624, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20756,7 +20756,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 661, + "rust_line": 625, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20777,7 +20777,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 662, + "rust_line": 626, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20798,7 +20798,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 663, + "rust_line": 627, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20819,7 +20819,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 664, + "rust_line": 628, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20840,7 +20840,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 665, + "rust_line": 629, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20861,7 +20861,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 666, + "rust_line": 630, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20882,7 +20882,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 667, + "rust_line": 631, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20903,7 +20903,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 668, + "rust_line": 632, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20924,7 +20924,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 669, + "rust_line": 633, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20945,7 +20945,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 670, + "rust_line": 634, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20966,7 +20966,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 671, + "rust_line": 635, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -20987,7 +20987,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 672, + "rust_line": 636, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21008,7 +21008,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 673, + "rust_line": 637, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21029,7 +21029,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 674, + "rust_line": 638, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21050,7 +21050,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 675, + "rust_line": 639, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21071,7 +21071,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 676, + "rust_line": 640, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21092,7 +21092,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 677, + "rust_line": 641, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21113,7 +21113,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 678, + "rust_line": 642, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21134,7 +21134,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 679, + "rust_line": 643, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21155,7 +21155,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 680, + "rust_line": 644, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21176,7 +21176,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 681, + "rust_line": 645, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21197,7 +21197,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 682, + "rust_line": 646, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21218,7 +21218,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 683, + "rust_line": 647, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21239,7 +21239,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 684, + "rust_line": 648, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21260,7 +21260,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 685, + "rust_line": 649, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21281,7 +21281,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 686, + "rust_line": 650, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21302,7 +21302,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 687, + "rust_line": 651, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21323,7 +21323,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 688, + "rust_line": 652, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21344,7 +21344,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 689, + "rust_line": 653, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21365,7 +21365,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 690, + "rust_line": 654, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21386,7 +21386,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 691, + "rust_line": 655, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21407,7 +21407,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 692, + "rust_line": 656, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21428,7 +21428,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 693, + "rust_line": 657, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21449,7 +21449,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 694, + "rust_line": 658, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21470,7 +21470,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 695, + "rust_line": 659, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21491,7 +21491,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 696, + "rust_line": 660, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21512,7 +21512,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 697, + "rust_line": 661, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21533,7 +21533,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 698, + "rust_line": 662, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21554,7 +21554,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 699, + "rust_line": 663, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21575,7 +21575,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 700, + "rust_line": 664, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21596,7 +21596,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 701, + "rust_line": 665, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21617,7 +21617,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 702, + "rust_line": 666, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21638,7 +21638,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 703, + "rust_line": 667, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21659,7 +21659,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 704, + "rust_line": 668, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21680,7 +21680,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 705, + "rust_line": 669, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21701,7 +21701,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 706, + "rust_line": 670, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21722,7 +21722,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 707, + "rust_line": 671, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21743,7 +21743,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 708, + "rust_line": 672, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21764,7 +21764,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 709, + "rust_line": 673, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21785,7 +21785,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 710, + "rust_line": 674, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21806,7 +21806,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 711, + "rust_line": 675, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21827,7 +21827,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 712, + "rust_line": 676, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21848,7 +21848,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 713, + "rust_line": 677, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21869,7 +21869,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 714, + "rust_line": 678, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21890,7 +21890,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 715, + "rust_line": 679, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21911,7 +21911,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 716, + "rust_line": 680, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21932,7 +21932,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 717, + "rust_line": 681, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21953,7 +21953,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 718, + "rust_line": 682, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21974,7 +21974,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 719, + "rust_line": 683, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -21995,7 +21995,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 720, + "rust_line": 684, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22016,7 +22016,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 721, + "rust_line": 685, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22037,7 +22037,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 722, + "rust_line": 686, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22058,7 +22058,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 723, + "rust_line": 687, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22079,7 +22079,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 724, + "rust_line": 688, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22100,7 +22100,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 725, + "rust_line": 689, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22121,7 +22121,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 726, + "rust_line": 690, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22142,7 +22142,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 727, + "rust_line": 691, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22163,7 +22163,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 728, + "rust_line": 692, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22184,7 +22184,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 729, + "rust_line": 693, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22205,7 +22205,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 730, + "rust_line": 694, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22226,7 +22226,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 731, + "rust_line": 695, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22247,7 +22247,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 732, + "rust_line": 696, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22268,7 +22268,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 733, + "rust_line": 697, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22289,7 +22289,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 734, + "rust_line": 698, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22308,7 +22308,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 735, + "rust_line": 699, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22327,7 +22327,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 736, + "rust_line": 700, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22346,7 +22346,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 737, + "rust_line": 701, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22365,7 +22365,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 738, + "rust_line": 702, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22384,7 +22384,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 739, + "rust_line": 703, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22403,7 +22403,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 740, + "rust_line": 704, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22422,7 +22422,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 741, + "rust_line": 705, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22441,7 +22441,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 742, + "rust_line": 706, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22460,7 +22460,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 743, + "rust_line": 707, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22479,7 +22479,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 744, + "rust_line": 708, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22498,7 +22498,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 745, + "rust_line": 709, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22517,7 +22517,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 746, + "rust_line": 710, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22536,7 +22536,7 @@ "categories": [], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 747, + "rust_line": 711, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22557,7 +22557,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 748, + "rust_line": 712, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22578,7 +22578,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 749, + "rust_line": 713, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22599,7 +22599,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 750, + "rust_line": 714, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22620,7 +22620,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 751, + "rust_line": 715, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22641,7 +22641,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 752, + "rust_line": 716, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22662,7 +22662,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 753, + "rust_line": 717, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22683,7 +22683,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 754, + "rust_line": 718, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22704,7 +22704,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 755, + "rust_line": 719, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22725,7 +22725,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 756, + "rust_line": 720, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22746,7 +22746,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 757, + "rust_line": 721, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22767,7 +22767,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 758, + "rust_line": 722, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22788,7 +22788,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 759, + "rust_line": 723, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22809,7 +22809,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 760, + "rust_line": 724, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22830,7 +22830,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 761, + "rust_line": 725, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22851,7 +22851,7 @@ "LibreMetaverse.Tests/RLV/RlvTestBase.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 762, + "rust_line": 726, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22893,7 +22893,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 763, + "rust_line": 727, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22916,7 +22916,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 764, + "rust_line": 728, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22939,7 +22939,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 765, + "rust_line": 729, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22962,7 +22962,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 766, + "rust_line": 730, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -22985,7 +22985,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 767, + "rust_line": 731, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23008,7 +23008,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 768, + "rust_line": 732, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23031,7 +23031,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 769, + "rust_line": 733, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23054,7 +23054,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 770, + "rust_line": 734, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23077,7 +23077,7 @@ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 771, + "rust_line": 735, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23097,12 +23097,12 @@ "fixture_dependencies": [ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 772, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "b8b44bec8f1a443c7205114c203177b9b3bb383e3df93a42d93b7862195838d0", + "status": "translated", + "rust_file": "tests/compat/tests/task_inventory_semantics.rs", + "rust_line": 138, + "rust_test": "cap_available_returns_contents_folder_and_decrypts_shadow_id", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_PlainAssetId_ParsesWithoutDecryption::test", @@ -23118,12 +23118,12 @@ "fixture_dependencies": [ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 773, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "216d66e54920b1c4d7e2c11b6e02d562636ce996269c3fd1f5188767c757d462", + "status": "translated", + "rust_file": "tests/compat/tests/task_inventory_semantics.rs", + "rust_line": 176, + "rust_test": "plain_asset_id_parses_without_decryption", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_NonSuccessStatus_ReturnsContentsFolderOnly::test", @@ -23139,12 +23139,12 @@ "fixture_dependencies": [ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 774, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "70980b8b2c37d807b00d3ad484db1c3a1e0e7bcce2890173b543225c0dac580e", + "status": "translated", + "rust_file": "tests/compat/tests/task_inventory_semantics.rs", + "rust_line": 196, + "rust_test": "non_success_status_returns_contents_folder_only", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/RequestTaskInventoryCapTests.cs::RequestTaskInventoryCapTests.GetTaskInventoryAsync_NoCapability_DoesNotMakeHttpRequest::test", @@ -23160,12 +23160,12 @@ "fixture_dependencies": [ "LibreMetaverse.Tests/TestHelpers/FakeGridClient.cs" ], - "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 775, - "rust_test": "", - "rust_body_sha256": null, - "status": "pending", - "semantic_review": "unreviewed" + "rust_body_sha256": "61b164811b90a2a6a62cfa7a0179dd70c8efbaa79e853113eb657463c60c05a6", + "status": "translated", + "rust_file": "tests/compat/tests/task_inventory_semantics.rs", + "rust_line": 211, + "rust_test": "no_capability_does_not_make_http_request", + "semantic_review": "reviewed" }, { "id": "LibreMetaverse.Tests/SendPostcardTests.cs::SendPostcardTests.SendPostcardAsync_HappyPath_PostsMetadataThenImageAndReturnsTrue::test", @@ -23266,7 +23266,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 776, + "rust_line": 736, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23287,7 +23287,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 777, + "rust_line": 737, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23308,7 +23308,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 778, + "rust_line": 738, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23329,7 +23329,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 779, + "rust_line": 739, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23350,7 +23350,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 780, + "rust_line": 740, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23371,7 +23371,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 781, + "rust_line": 741, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23392,7 +23392,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 782, + "rust_line": 742, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23413,7 +23413,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 783, + "rust_line": 743, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23434,7 +23434,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 784, + "rust_line": 744, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23455,7 +23455,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 785, + "rust_line": 745, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23476,7 +23476,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 786, + "rust_line": 746, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23497,7 +23497,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 787, + "rust_line": 747, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23518,7 +23518,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 788, + "rust_line": 748, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23539,7 +23539,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 789, + "rust_line": 749, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23560,7 +23560,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 790, + "rust_line": 750, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23581,7 +23581,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 791, + "rust_line": 751, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23602,7 +23602,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 792, + "rust_line": 752, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23623,7 +23623,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 793, + "rust_line": 753, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23644,7 +23644,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 794, + "rust_line": 754, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23665,7 +23665,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 795, + "rust_line": 755, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23686,7 +23686,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 796, + "rust_line": 756, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23707,7 +23707,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 797, + "rust_line": 757, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23728,7 +23728,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 798, + "rust_line": 758, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23749,7 +23749,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 799, + "rust_line": 759, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23770,7 +23770,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 800, + "rust_line": 760, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23791,7 +23791,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 801, + "rust_line": 761, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23812,7 +23812,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 802, + "rust_line": 762, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23833,7 +23833,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 803, + "rust_line": 763, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23854,7 +23854,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 804, + "rust_line": 764, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23875,7 +23875,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 805, + "rust_line": 765, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23896,7 +23896,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 806, + "rust_line": 766, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23917,7 +23917,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 807, + "rust_line": 767, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23938,7 +23938,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 808, + "rust_line": 768, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23959,7 +23959,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 809, + "rust_line": 769, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -23980,7 +23980,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 810, + "rust_line": 770, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -24001,7 +24001,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 811, + "rust_line": 771, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -24022,7 +24022,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 812, + "rust_line": 772, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -24043,7 +24043,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 813, + "rust_line": 773, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -24190,7 +24190,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 814, + "rust_line": 774, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -24211,7 +24211,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 815, + "rust_line": 775, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -24232,7 +24232,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 816, + "rust_line": 776, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -24253,7 +24253,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 817, + "rust_line": 777, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -24274,7 +24274,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 818, + "rust_line": 778, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -24295,7 +24295,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 819, + "rust_line": 779, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -24316,7 +24316,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 820, + "rust_line": 780, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -24337,7 +24337,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 821, + "rust_line": 781, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -24358,7 +24358,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 822, + "rust_line": 782, "rust_test": "", "rust_body_sha256": null, "status": "pending", @@ -24379,7 +24379,7 @@ ], "fixture_dependencies": [], "rust_file": "tests/compat/tests/generated_parity.rs", - "rust_line": 823, + "rust_line": 783, "rust_test": "", "rust_body_sha256": null, "status": "pending", diff --git a/tools/generate_api_shims.py b/tools/generate_api_shims.py index e83e55b..9eb9bbc 100644 --- a/tools/generate_api_shims.py +++ b/tools/generate_api_shims.py @@ -73,10 +73,21 @@ WIRE_ROOT_TYPES = { "T:LibreMetaverse.TreeDefinition", } COMPOSED_BASE_TYPES = { + "T:LibreMetaverse.InventoryAnimation", "T:LibreMetaverse.InventoryAttachment", + "T:LibreMetaverse.InventoryCallingCard", + "T:LibreMetaverse.InventoryCategory", "T:LibreMetaverse.InventoryFolder", + "T:LibreMetaverse.InventoryGesture", "T:LibreMetaverse.InventoryItem", + "T:LibreMetaverse.InventoryLSL", + "T:LibreMetaverse.InventoryLandmark", + "T:LibreMetaverse.InventoryMaterial", + "T:LibreMetaverse.InventoryNotecard", "T:LibreMetaverse.InventoryObject", + "T:LibreMetaverse.InventorySettings", + "T:LibreMetaverse.InventorySnapshot", + "T:LibreMetaverse.InventorySound", "T:LibreMetaverse.InventoryTexture", "T:LibreMetaverse.InventoryWearable", "T:LibreMetaverse.Messages.Linden.ChatSessionAcceptInvitation", diff --git a/tools/generate_rust_mapping.py b/tools/generate_rust_mapping.py index bde7673..b65ba0d 100644 --- a/tools/generate_rust_mapping.py +++ b/tools/generate_rust_mapping.py @@ -183,6 +183,107 @@ MEMBER_TYPE_OVERRIDES = { ), } MEMBER_SIGNATURE_OVERRIDES = { + "M:LibreMetaverse.Inventory.#ctor(LibreMetaverse.GridClient)": ( + "pub fn new_with_grid_client(client: std::sync::Arc) " + "-> Result", + "shared", + ), + "M:LibreMetaverse.Inventory.#ctor(LibreMetaverse.GridClient,LibreMetaverse.UUID)": ( + "pub fn new_with_grid_client_uuid(client: std::sync::Arc, " + "owner: libremetaverse_types::UUID) -> Result", + "shared,owned", + ), + "M:LibreMetaverse.Inventory.Contains(LibreMetaverse.InventoryBase)": ( + "pub fn contains_with_inventory_base(&self, obj: &dyn " + "libremetaverse::InventoryObjectClass) -> Result", + "shared_self,shared_borrow", + ), + "M:LibreMetaverse.Inventory.GetContents(LibreMetaverse.InventoryFolder)": ( + "pub fn get_contents_with_inventory_folder(&self, folder: &libremetaverse::InventoryFolder) " + "-> Result>, crate::Error>", + "shared_self,shared_borrow", + ), + "M:LibreMetaverse.Inventory.GetContents(LibreMetaverse.UUID)": ( + "pub fn get_contents_with_uuid(&self, folder: libremetaverse_types::UUID) " + "-> Result>, crate::Error>", + "shared_self,owned", + ), + "M:LibreMetaverse.Inventory.RemoveNodeFor(LibreMetaverse.InventoryBase)": ( + "pub fn remove_node_for(&self, item: &dyn libremetaverse::InventoryObjectClass) " + "-> Result<(), crate::Error>", + "shared_self,shared_borrow", + ), + "M:LibreMetaverse.Inventory.TryGetValue(LibreMetaverse.UUID,LibreMetaverse.InventoryBase@)": ( + "pub fn try_get_value_with_uuid_inventory_base(&self, uuid: libremetaverse_types::UUID, " + "item: &mut Option>) " + "-> Result", + "shared_self,owned,mutable_output", + ), + "M:LibreMetaverse.Inventory.UpdateNodeFor(LibreMetaverse.InventoryBase)": ( + "pub fn update_node_for(&self, item: &dyn libremetaverse::InventoryObjectClass) " + "-> Result<(), crate::Error>", + "shared_self,shared_borrow", + ), + "M:LibreMetaverse.InventoryAISClient.#ctor(LibreMetaverse.GridClient)": ( + "pub fn new(client: Option>) " + "-> Result", + "optional_shared", + ), + "M:LibreMetaverse.InventoryAISClient.ParseEmbedded(LibreMetaverse.StructuredData.OSDMap,System.Collections.Generic.List{LibreMetaverse.InventoryFolder}@,System.Collections.Generic.List{LibreMetaverse.InventoryItem}@,System.Collections.Generic.List{LibreMetaverse.InventoryItem}@)": ( + "pub fn parse_embedded(&self, response: libremetaverse_structured_data::OSD, " + "folders: &mut Option>, items: &mut " + "Option>, links: &mut " + "Option>) " + "-> Result<(), crate::Error>", + "shared_self,owned,mutable_output,mutable_output,mutable_output", + ), + "M:LibreMetaverse.InventoryAISClient.ParseItemsFromEmbedded(LibreMetaverse.StructuredData.OSDMap)": ( + "pub fn parse_items_from_embedded(&self, response: " + "Option) -> Result, " + "crate::Error>", + "shared_self,optional_owned", + ), + "M:LibreMetaverse.InventoryAISClient.ParseLinksFromEmbedded(LibreMetaverse.StructuredData.OSDMap)": ( + "pub fn parse_links_from_embedded(&self, response: " + "Option) -> Result, " + "crate::Error>", + "shared_self,optional_owned", + ), + "M:LibreMetaverse.InventoryManager.#ctor(LibreMetaverse.GridClient)": ( + "pub fn new(client: Option>) " + "-> Result", + "optional_shared", + ), + "M:LibreMetaverse.InventoryManager.CreateInventoryItem(LibreMetaverse.InventoryType,LibreMetaverse.UUID)": ( + "pub fn create_inventory_item(type_: libremetaverse_types::InventoryType, id: " + "libremetaverse_types::UUID) -> Result, crate::Error>", + "owned,owned", + ), + "M:LibreMetaverse.InventoryManager.FolderContentsAsync(LibreMetaverse.UUID,LibreMetaverse.UUID,System.Boolean,System.Boolean,LibreMetaverse.InventorySortOrder,System.Threading.CancellationToken,System.Boolean)": ( + "pub async fn folder_contents(&self, folder: libremetaverse_types::UUID, owner: " + "libremetaverse_types::UUID, fetch_folders: bool, fetch_items: bool, order: " + "libremetaverse::InventorySortOrder, cancellation_token: " + "Option, follow_links: Option) " + "-> Result>, crate::Error>", + "shared_self,owned,owned,owned,owned,owned,optional_owned,optional_owned", + ), + "M:LibreMetaverse.InventoryManager.GetTaskInventoryAsync(LibreMetaverse.UUID,System.UInt32,LibreMetaverse.Simulator,System.Threading.CancellationToken)": ( + "pub async fn get_task_inventory(&self, object_id: libremetaverse_types::UUID, " + "object_local_id: u32, simulator: Option, cancellation_token: " + "Option) -> Result>, crate::Error>", + "shared_self,owned,owned,optional_owned,optional_owned", + ), + "M:LibreMetaverse.InventoryManager.ItemCRC(LibreMetaverse.InventoryItem)": ( + "pub fn item_crc(iitem: &libremetaverse::InventoryItem) -> Result", + "shared_borrow", + ), + "M:LibreMetaverse.InventoryNode.#ctor(LibreMetaverse.InventoryBase)": ( + "pub fn new_with_inventory_base(data: &dyn libremetaverse::InventoryObjectClass) " + "-> Result", + "shared_borrow", + ), "M:LibreMetaverse.AvatarAppearanceEventArgs.#ctor(LibreMetaverse.Simulator,LibreMetaverse.UUID,System.Boolean,LibreMetaverse.Primitive.TextureEntryFace,LibreMetaverse.Primitive.TextureEntryFace[],System.Collections.Generic.List{System.Byte},System.Byte,System.Int32,LibreMetaverse.AppearanceFlags,System.Int32)": ( "pub fn new(sim: Option, avatar_id: libremetaverse_types::UUID, " "is_trial: bool, default_texture: libremetaverse::PrimitiveTextureEntryFace, face_textures: " @@ -352,6 +453,12 @@ MEMBER_SIGNATURE_OVERRIDES = { ), } PROPERTY_SIGNATURE_OVERRIDES = { + "P:LibreMetaverse.InventoryNode.Data": ( + "pub fn data(&self) -> Option> ; " + "pub fn set_data(&mut self, value: Option>)", + "shared_or_mutable_self", + ), "P:LibreMetaverse.AppearanceManager.TextureProvider": ( "pub fn texture_provider(&self) -> std::sync::Arc ; " "pub fn set_texture_provider(&mut self, value: std::sync::Arc