// @generated by tools/generate_api_shims.py; do not edit by hand.
#![allow(clippy::missing_errors_doc)]
#![allow(clippy::must_use_candidate)]
#![allow(clippy::all, clippy::pedantic, dead_code, unused_variables)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]

/// C# type: `T:LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.#ctor`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsBinary`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsBoolean`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsColor4`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsDate`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsInteger`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsLong`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsQuaternion`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsReal`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsString`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsUInteger`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsULong`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsUUID`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsUri`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsVector2`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsVector3`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsVector3d`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.AsVector4`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.Copy`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.DeserializeMembers(System.Object@,LibreMetaverse.StructuredData.OSDMap)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromBinary(System.Byte[])`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromBoolean(System.Boolean)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromColor4(LibreMetaverse.Color4)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromDate(System.DateTime)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromInteger(System.Byte)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromInteger(System.Int16)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromInteger(System.Int32)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromInteger(System.SByte)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromInteger(System.UInt16)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromInteger(System.UInt32)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromLong(System.Int64)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromObject(System.Object)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromQuaternion(LibreMetaverse.Quaternion)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromReal(System.Double)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromReal(System.Single)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromString(System.String)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromUInteger(System.UInt32)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromULong(System.UInt64)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromUUID(LibreMetaverse.UUID)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromUri(System.Uri)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromVector2(LibreMetaverse.Vector2)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromVector3(LibreMetaverse.Vector3)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromVector3d(LibreMetaverse.Vector3d)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.FromVector4(LibreMetaverse.Vector4)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.SerializeMembers(System.Object)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.ToObject(System.Type,LibreMetaverse.StructuredData.OSD)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.ToString`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Color4)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Quaternion)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Color4`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Quaternion`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.UUID`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Vector2`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Vector3`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Vector3d`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Vector4`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Boolean`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Byte[]`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.DateTime`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Double`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Int32`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Int64`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Single`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.String`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.UInt32`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.UInt64`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Uri`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.UUID)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Vector2)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Vector3)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Vector3d)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Vector4)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Boolean)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Byte)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Byte[])~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.DateTime)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Double)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Int16)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Int32)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Int64)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.SByte)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Single)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.String)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.UInt16)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.UInt32)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.UInt64)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Uri)~LibreMetaverse.StructuredData.OSD`.
/// C# member: `P:LibreMetaverse.StructuredData.OSD.Type`.
pub use crate::model::OSD;

/// C# type: `T:LibreMetaverse.StructuredData.OSDArray`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.#ctor`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.#ctor(System.Collections.Generic.List{LibreMetaverse.StructuredData.OSD})`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.#ctor(System.Int32)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.Add(LibreMetaverse.StructuredData.OSD)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsBinary`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsBoolean`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsColor4`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsLong`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsQuaternion`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsUInteger`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsULong`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsVector2`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsVector3`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsVector3d`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsVector4`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.Clear`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.Contains(LibreMetaverse.StructuredData.OSD)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.Contains(System.String)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.Copy`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.CopyTo(LibreMetaverse.StructuredData.OSD[],System.Int32)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.IndexOf(LibreMetaverse.StructuredData.OSD)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.Insert(System.Int32,LibreMetaverse.StructuredData.OSD)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.Remove(LibreMetaverse.StructuredData.OSD)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.RemoveAt(System.Int32)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.ToArrayList`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDArray.ToString`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDArray.Count`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDArray.IsReadOnly`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDArray.Item(System.Int32)`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDArray.Type`.
pub use crate::model::OSDArray;

/// C# type: `T:LibreMetaverse.StructuredData.OSDBinary`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.#ctor(System.Byte[])`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.#ctor(System.Int64)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.#ctor(System.UInt32)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.#ctor(System.UInt64)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.AsBinary`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.AsLong`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.AsString`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.AsUInteger`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.AsULong`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.Copy`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.ToString`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDBinary.Type`.
pub use crate::model::OSDBinary;

/// C# type: `T:LibreMetaverse.StructuredData.OSDBoolean`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.#ctor(System.Boolean)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.AsBinary`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.AsBoolean`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.AsInteger`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.AsReal`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.AsString`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.Copy`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.ToString`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDBoolean.Type`.
pub use crate::model::OSDBoolean;

/// C# type: `T:LibreMetaverse.StructuredData.OSDDate`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDDate.#ctor(System.DateTime)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDDate.AsBinary`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDDate.AsDate`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDDate.AsInteger`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDDate.AsLong`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDDate.AsString`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDDate.AsUInteger`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDDate.AsULong`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDDate.Copy`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDDate.ToString`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDDate.Type`.
pub use crate::model::OSDDate;

/// C# type: `T:LibreMetaverse.StructuredData.OSDException`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDException.#ctor`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDException.#ctor(System.String)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDException.#ctor(System.String,System.Exception)`.
pub use crate::model::OSDException;

/// C# type: `T:LibreMetaverse.StructuredData.OSDFormat`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDFormat.Binary`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDFormat.Json`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDFormat.Xml`.
pub use crate::model::OSDFormat;

/// C# type: `T:LibreMetaverse.StructuredData.OSDInteger`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.#ctor(System.Int32)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsBinary`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsBoolean`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsInteger`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsLong`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsReal`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsString`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsUInteger`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsULong`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.Copy`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.ToString`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDInteger.Type`.
pub use crate::model::OSDInteger;

/// C# type: `T:LibreMetaverse.StructuredData.OSDLlsdXml`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDLlsdXml.value`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDLlsdXml.#ctor(System.String)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDLlsdXml.AsBinary`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDLlsdXml.AsString`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDLlsdXml.Copy`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDLlsdXml.ToString`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDLlsdXml.Type`.
pub use crate::model::OSDLlsdXml;

/// C# type: `T:LibreMetaverse.StructuredData.OSDMap`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.#ctor`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.#ctor(System.Collections.Generic.Dictionary{System.String,LibreMetaverse.StructuredData.OSD})`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.#ctor(System.Int32)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.Add(System.Collections.Generic.KeyValuePair{System.String,LibreMetaverse.StructuredData.OSD})`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.Add(System.String,LibreMetaverse.StructuredData.OSD)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.AsBoolean`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.Clear`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.Contains(System.Collections.Generic.KeyValuePair{System.String,LibreMetaverse.StructuredData.OSD})`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.ContainsKey(System.String)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.Copy`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.CopyTo(System.Collections.Generic.KeyValuePair{System.String,LibreMetaverse.StructuredData.OSD}[],System.Int32)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.GetEnumerator`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.Remove(System.Collections.Generic.KeyValuePair{System.String,LibreMetaverse.StructuredData.OSD})`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.Remove(System.String)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.ToHashtable`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.ToString`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDMap.TryGetValue(System.String,LibreMetaverse.StructuredData.OSD@)`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDMap.Count`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDMap.IsReadOnly`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDMap.Item(System.String)`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDMap.Keys`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDMap.Type`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDMap.Values`.
pub use crate::model::OSDMap;

/// C# type: `T:LibreMetaverse.StructuredData.OSDParser`.
pub use crate::model::OSDParser;
impl OSDParser {
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.BufferCharactersEqual(System.IO.StringReader,System.Char[],System.Int32)`.
    pub fn buffer_characters_equal(
        reader: libremetaverse_types::compat::StringReader,
        buffer: Vec<libremetaverse_types::compat::Utf16CodeUnit>,
        offset: i32,
    ) -> Result<i32, crate::Error> {
        crate::notation::buffer_characters_equal(reader, buffer, offset)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.ConsumeBytes(System.IO.Stream,System.Int32)`.
    pub fn consume_bytes(
        stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
        consume_bytes: i32,
    ) -> Result<Vec<u8>, crate::Error> {
        crate::binary::consume_bytes(stream, consume_bytes)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.Deserialize(System.Byte[])`.
    pub fn deserialize_with_bytes(
        data: Vec<u8>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        crate::dispatch::deserialize_bytes(data)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.Deserialize(System.IO.Stream)`.
    pub fn deserialize_with_stream(
        stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        crate::dispatch::deserialize_stream(stream)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.Deserialize(System.String)`.
    pub fn deserialize_with_string(
        data: String,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        crate::dispatch::deserialize_string(data)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeJson(System.IO.Stream)`.
    pub fn deserialize_json_with_stream(
        json: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        crate::json_codec::deserialize_stream(json)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeJson(System.String)`.
    pub fn deserialize_json_with_string(
        json: String,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        crate::json_codec::deserialize_string(json)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDBinary(System.Byte[])`.
    pub fn deserialize_llsd_binary_with_bytes(
        binary_data: Vec<u8>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        crate::binary::deserialize_bytes(binary_data)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDBinary(System.IO.Stream)`.
    pub fn deserialize_llsd_binary_with_stream(
        stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        crate::binary::deserialize_stream(stream)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDNotation(System.IO.StringReader)`.
    pub fn deserialize_llsd_notation_with_string_reader(
        reader: libremetaverse_types::compat::StringReader,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        crate::notation::deserialize_reader(reader)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDNotation(System.String)`.
    pub fn deserialize_llsd_notation_with_string(
        notation_data: String,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        crate::notation::deserialize_string(notation_data)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDProtobuf(System.Byte[])`.
    pub fn deserialize_llsd_protobuf_with_bytes(
        data: Vec<u8>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        crate::protobuf::deserialize_bytes(data)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDProtobuf(System.IO.Stream)`.
    pub fn deserialize_llsd_protobuf_with_stream(
        stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        crate::protobuf::deserialize_stream(stream)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.Byte[])`.
    pub fn deserialize_llsd_xml_with_bytes(
        xml_data: Vec<u8>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        crate::xml_codec::deserialize_bytes(xml_data)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.IO.Stream)`.
    pub fn deserialize_llsd_xml_with_stream(
        xml_stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        crate::xml_codec::deserialize_stream(xml_stream)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.String)`.
    pub fn deserialize_llsd_xml_with_string(
        xml_data: String,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        crate::xml_codec::deserialize_string(xml_data)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.Xml.XmlReader)`.
    pub fn deserialize_llsd_xml_with_xml_reader(
        xml_data: libremetaverse_structured_data::xml::Reader,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        crate::xml_codec::deserialize_reader(xml_data)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.EscapeCharacter(System.String,System.Char)`.
    pub fn escape_character(
        s: String,
        c: libremetaverse_types::compat::Utf16CodeUnit,
    ) -> Result<String, crate::Error> {
        crate::notation::escape_character(s, c)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.FindByte(System.IO.Stream,System.Byte)`.
    pub fn find_byte(
        stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
        to_find: u8,
    ) -> Result<bool, crate::Error> {
        crate::binary::find_byte(stream, to_find)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.FindString(System.IO.Stream,System.String)`.
    pub fn find_string(
        stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
        to_find: String,
    ) -> Result<bool, crate::Error> {
        crate::binary::find_string(stream, to_find)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.GetLengthInBrackets(System.IO.StringReader)`.
    pub fn get_length_in_brackets(
        reader: libremetaverse_types::compat::StringReader,
    ) -> Result<i32, crate::Error> {
        crate::notation::get_length_in_brackets(reader)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.GetStringDelimitedBy(System.IO.StringReader,System.Char)`.
    pub fn get_string_delimited_by(
        reader: libremetaverse_types::compat::StringReader,
        delimiter: libremetaverse_types::compat::Utf16CodeUnit,
    ) -> Result<String, crate::Error> {
        crate::notation::get_string_delimited_by(reader, delimiter)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.HostToNetworkIntBytes(System.Int32)`.
    pub fn host_to_network_int_bytes(int_host_end: i32) -> Result<Vec<u8>, crate::Error> {
        crate::binary::host_to_network_int_bytes(int_host_end)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.NetworkToHostDouble(System.Byte[])`.
    pub fn network_to_host_double(binary_net_end: Vec<u8>) -> Result<f64, crate::Error> {
        crate::binary::network_to_host_double(binary_net_end)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.NetworkToHostInt(System.Byte[])`.
    pub fn network_to_host_int(binary_net_end: Vec<u8>) -> Result<i32, crate::Error> {
        crate::binary::network_to_host_int(binary_net_end)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.PeekAndSkipWhitespace(System.IO.StringReader)`.
    pub fn peek_and_skip_whitespace(
        reader: libremetaverse_types::compat::StringReader,
    ) -> Result<i32, crate::Error> {
        crate::notation::peek_and_skip_whitespace(reader)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.ReadAndSkipWhitespace(System.IO.StringReader)`.
    pub fn read_and_skip_whitespace(
        reader: libremetaverse_types::compat::StringReader,
    ) -> Result<i32, crate::Error> {
        crate::notation::read_and_skip_whitespace(reader)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeJsonString(LibreMetaverse.StructuredData.OSD,System.Boolean)`.
    pub fn serialize_json_string(
        osd: libremetaverse_structured_data::OSD,
        preserve_defaults: Option<bool>,
    ) -> Result<String, crate::Error> {
        crate::json_codec::serialize(osd, preserve_defaults)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDBinary(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_binary_with_osd(
        osd: libremetaverse_structured_data::OSD,
    ) -> Result<Vec<u8>, crate::Error> {
        crate::binary::serialize(osd)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDBinary(LibreMetaverse.StructuredData.OSD,System.Boolean)`.
    pub fn serialize_llsd_binary_with_osd_boolean(
        osd: libremetaverse_structured_data::OSD,
        prepend_header: bool,
    ) -> Result<Vec<u8>, crate::Error> {
        crate::binary::serialize_with_header(osd, prepend_header)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDBinaryStream(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_binary_stream_with_osd(
        data: libremetaverse_structured_data::OSD,
    ) -> Result<std::io::Cursor<Vec<u8>>, crate::Error> {
        crate::binary::serialize_stream(data)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDBinaryStream(LibreMetaverse.StructuredData.OSD,System.Boolean)`.
    pub fn serialize_llsd_binary_stream_with_osd_boolean(
        data: libremetaverse_structured_data::OSD,
        prepend_header: bool,
    ) -> Result<std::io::Cursor<Vec<u8>>, crate::Error> {
        crate::binary::serialize_stream_with_header(data, prepend_header)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDInnerXmlString(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_inner_xml_string(
        data: libremetaverse_structured_data::OSD,
    ) -> Result<String, crate::Error> {
        crate::xml_codec::serialize_inner(data)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDNotation(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_notation(
        osd: libremetaverse_structured_data::OSD,
    ) -> Result<String, crate::Error> {
        crate::notation::serialize(osd)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDNotationFormatted(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_notation_formatted(
        osd: libremetaverse_structured_data::OSD,
    ) -> Result<String, crate::Error> {
        crate::notation::serialize_formatted(osd)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDNotationStream(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_notation_stream(
        osd: libremetaverse_structured_data::OSD,
    ) -> Result<libremetaverse_types::compat::StringWriter, crate::Error> {
        crate::notation::serialize_stream(osd)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDNotationStreamFormatted(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_notation_stream_formatted(
        osd: libremetaverse_structured_data::OSD,
    ) -> Result<libremetaverse_types::compat::StringWriter, crate::Error> {
        crate::notation::serialize_stream_formatted(osd)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDProtobuf(LibreMetaverse.StructuredData.OSD,System.Boolean)`.
    pub fn serialize_llsd_protobuf(
        osd: libremetaverse_structured_data::OSD,
        prepend_header: Option<bool>,
    ) -> Result<Vec<u8>, crate::Error> {
        crate::protobuf::serialize(osd, prepend_header)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDXmlBytes(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_xml_bytes(
        data: libremetaverse_structured_data::OSD,
    ) -> Result<Vec<u8>, crate::Error> {
        crate::xml_codec::serialize_bytes(data)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDXmlElement(System.Xml.XmlWriter,LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_xml_element(
        writer: libremetaverse_structured_data::xml::Writer,
        data: libremetaverse_structured_data::OSD,
    ) -> Result<(), crate::Error> {
        crate::xml_codec::serialize_element(writer, data)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDXmlString(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_xml_string(
        data: libremetaverse_structured_data::OSD,
    ) -> Result<String, crate::Error> {
        crate::xml_codec::serialize_string(data)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SkipWhiteSpace(System.IO.Stream)`.
    pub fn skip_white_space(
        stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
    ) -> Result<(), crate::Error> {
        crate::binary::skip_whitespace(stream)
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.UnescapeCharacter(System.String,System.Char)`.
    pub fn unescape_character(
        s: String,
        c: libremetaverse_types::compat::Utf16CodeUnit,
    ) -> Result<String, crate::Error> {
        crate::notation::unescape_character(s, c)
    }
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDReal`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDReal.#ctor(System.Double)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsBinary`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsBoolean`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsInteger`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsLong`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsReal`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsString`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsUInteger`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsULong`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDReal.Copy`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDReal.ToString`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDReal.Type`.
pub use crate::model::OSDReal;

/// C# type: `T:LibreMetaverse.StructuredData.OSDString`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDString.#ctor(System.String)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsBinary`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsBoolean`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsDate`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsInteger`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsLong`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsReal`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsString`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsUInteger`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsULong`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsUUID`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsUri`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDString.Copy`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDString.ToString`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDString.Type`.
pub use crate::model::OSDString;

/// C# type: `T:LibreMetaverse.StructuredData.OSDType`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDType.Array`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDType.Binary`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDType.Boolean`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDType.Date`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDType.Integer`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDType.LlsdXml`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDType.Map`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDType.Real`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDType.String`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDType.URI`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDType.UUID`.
/// C# member: `F:LibreMetaverse.StructuredData.OSDType.Unknown`.
pub use crate::model::OSDType;

/// C# type: `T:LibreMetaverse.StructuredData.OSDUUID`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDUUID.#ctor(LibreMetaverse.UUID)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDUUID.AsBinary`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDUUID.AsBoolean`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDUUID.AsString`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDUUID.AsUUID`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDUUID.Copy`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDUUID.ToString`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDUUID.Type`.
pub use crate::model::OSDUUID;

/// C# type: `T:LibreMetaverse.StructuredData.OSDUri`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDUri.#ctor(System.Uri)`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDUri.AsBinary`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDUri.AsString`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDUri.AsUri`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDUri.Copy`.
/// C# member: `M:LibreMetaverse.StructuredData.OSDUri.ToString`.
/// C# member: `P:LibreMetaverse.StructuredData.OSDUri.Type`.
pub use crate::model::OSDUri;
