Generate extension API shims

This commit is contained in:
2026-08-08 12:58:50 +02:00
parent 1291234e6f
commit 643762fd1d
19 changed files with 12766 additions and 1312 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,7 @@
//! LSL parsing tools corresponding to `LibreMetaverse.LslTools`.
extern crate self as libremetaverse_lsl_tools;
mod generated;
pub use generated::*;

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,7 @@
//! Restrained Love Viewer support corresponding to `LibreMetaverse.RLV`.
extern crate self as libremetaverse_rlv;
mod generated;
pub use generated::*;

View File

@@ -136,3 +136,15 @@ pub struct Span<T>(pub PhantomData<fn(T)>);
pub struct RandomSource;
pub struct IAsyncEnumerable<T>(pub PhantomData<fn() -> T>);
pub struct ImmutableDictionary<TKey, TValue>(pub PhantomData<fn(TKey, TValue)>);
pub struct ImmutableList<T>(pub PhantomData<fn(T)>);
pub struct ICollection;
pub struct UnicodeCategory(pub i32);
pub struct TextEncoding;
pub struct SocketException;

View File

@@ -1,27 +1,116 @@
// @generated by tools/generate_surface.py; do not edit by hand.
// Source: LibreMetaverse 2aa70bb68513b39795da5d13c88f31b86e85a3ba
// @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)]
/// `class` shim for C# `LibreMetaverse.Utilities.ConnectionManager`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
/// C# type: `T:LibreMetaverse.Utilities.ConnectionManager`.
pub struct ConnectionManager;
impl ConnectionManager {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.Utilities.ConnectionManager";
pub const CSHARP_KIND: &'static str = "class";
/// C# member: `M:LibreMetaverse.Utilities.ConnectionManager.#ctor(LibreMetaverse.GridClient,System.Int32)`.
pub fn new(
client: libremetaverse::GridClient,
timer_frequency: i32,
) -> Result<Self, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Utilities.ConnectionManager.#ctor(LibreMetaverse.GridClient,System.Int32)",
)
}
/// C# member: `M:LibreMetaverse.Utilities.ConnectionManager.PersistentLogin(LibreMetaverse.GridClient,System.String,System.String,System.String,System.String,System.String,System.String)`.
pub async fn persistent_login(
client: libremetaverse::GridClient,
first_name: String,
last_name: String,
password: String,
user_agent: String,
start: String,
author: String,
) -> Result<bool, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Utilities.ConnectionManager.PersistentLogin(LibreMetaverse.GridClient,System.String,System.String,System.String,System.String,System.String,System.String)",
)
}
/// C# member: `M:LibreMetaverse.Utilities.ConnectionManager.StayInSim(System.UInt64,LibreMetaverse.Vector3)`.
pub fn stay_in_sim(
&self,
handle: u64,
desired_position: libremetaverse_types::Vector3,
) -> Result<(), crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Utilities.ConnectionManager.StayInSim(System.UInt64,LibreMetaverse.Vector3)",
)
}
/// C# member: `M:LibreMetaverse.Utilities.ConnectionManager.Stop`.
pub fn stop(&self) -> Result<(), crate::Error> {
libremetaverse_types::not_implemented("M:LibreMetaverse.Utilities.ConnectionManager.Stop")
}
}
/// `class` shim for C# `LibreMetaverse.Utilities.Realism`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
/// C# type: `T:LibreMetaverse.Utilities.Realism`.
pub struct Realism;
impl Realism {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.Utilities.Realism";
pub const CSHARP_KIND: &'static str = "class";
/// C# member: `M:LibreMetaverse.Utilities.Realism.Chat(LibreMetaverse.GridClient,System.String)`.
pub fn chat_with_grid_client_string(
client: libremetaverse::GridClient,
message: String,
) -> Result<(), crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Utilities.Realism.Chat(LibreMetaverse.GridClient,System.String)",
)
}
/// C# member: `M:LibreMetaverse.Utilities.Realism.Chat(LibreMetaverse.GridClient,System.String,LibreMetaverse.ChatType,System.Int32)`.
pub fn chat_with_grid_client_string_chat_type_int32(
client: libremetaverse::GridClient,
message: String,
type_: libremetaverse::ChatType,
cps: i32,
) -> Result<(), crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Utilities.Realism.Chat(LibreMetaverse.GridClient,System.String,LibreMetaverse.ChatType,System.Int32)",
)
}
/// C# member: `M:LibreMetaverse.Utilities.Realism.ChatAsync(LibreMetaverse.GridClient,System.String,LibreMetaverse.ChatType,System.Int32,System.Threading.CancellationToken)`.
pub async fn chat_with_grid_client_string_chat_type_int32_cancellation_token(
client: libremetaverse::GridClient,
message: String,
type_: libremetaverse::ChatType,
cps: i32,
cancellation_token: Option<libremetaverse_types::compat::CancellationToken>,
) -> Result<(), crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Utilities.Realism.ChatAsync(LibreMetaverse.GridClient,System.String,LibreMetaverse.ChatType,System.Int32,System.Threading.CancellationToken)",
)
}
/// C# member: `M:LibreMetaverse.Utilities.Realism.Shoot(LibreMetaverse.GridClient)`.
pub fn shoot_with_grid_client(
client: libremetaverse::GridClient,
) -> Result<bool, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Utilities.Realism.Shoot(LibreMetaverse.GridClient)",
)
}
/// C# member: `M:LibreMetaverse.Utilities.Realism.Shoot(LibreMetaverse.GridClient,LibreMetaverse.Vector3)`.
pub fn shoot_with_grid_client_vector3(
client: libremetaverse::GridClient,
target: libremetaverse_types::Vector3,
) -> Result<bool, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Utilities.Realism.Shoot(LibreMetaverse.GridClient,LibreMetaverse.Vector3)",
)
}
}
/// `enum` shim for C# `LibreMetaverse.Utilities.WaterType`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
pub struct WaterType;
impl WaterType {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.Utilities.WaterType";
pub const CSHARP_KIND: &'static str = "enum";
/// C# type: `T:LibreMetaverse.Utilities.WaterType`.
#[derive(Clone, Copy, Debug, Eq, Hash, PartialEq)]
#[repr(i32)]
pub enum WaterType {
/// C# member: `F:LibreMetaverse.Utilities.WaterType.Dry`.
Dry = 1,
/// C# member: `F:LibreMetaverse.Utilities.WaterType.Underwater`.
Underwater = 3,
/// C# member: `F:LibreMetaverse.Utilities.WaterType.Unknown`.
Unknown = 0,
/// C# member: `F:LibreMetaverse.Utilities.WaterType.Waterfront`.
Waterfront = 2,
}

View File

@@ -1,5 +1,7 @@
//! Utilities corresponding to `LibreMetaverse.Utilities`.
extern crate self as libremetaverse_utilities;
mod generated;
pub use generated::*;

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,7 @@
//! Vivox adapter corresponding to `LibreMetaverse.Voice.Vivox`.
extern crate self as libremetaverse_voice_vivox;
mod generated;
pub use generated::*;

File diff suppressed because it is too large Load Diff

View File

@@ -1,8 +1,33 @@
//! WebRTC voice adapter corresponding to `LibreMetaverse.Voice.WebRTC`.
extern crate self as libremetaverse_voice_webrtc;
mod generated;
pub use generated::*;
pub use libremetaverse as core;
pub use libremetaverse_structured_data as structured_data;
pub use libremetaverse_types::NotImplemented as Error;
/// Project-owned boundary types for external JSON signatures.
pub mod signaling {
pub struct JsonValue;
}
/// Project-owned boundary types for external WebRTC transport signatures.
pub mod transport {
pub struct RTCDataChannel;
pub struct RTCPeerConnection;
}
/// Project-owned boundary types for external media signatures.
pub mod media {
pub struct AudioSamplingRatesEnum(pub i32);
}
/// Project-owned boundary types for external audio signatures.
pub mod audio {
pub struct NoiseSuppressionLevel(pub i32);
pub struct SoundFlowAudioEndPoint;
pub struct SoundFlowAudioSource;
}

View File

@@ -23783,7 +23783,7 @@ pub struct PrimitiveConstructionData {
/// C# member: `F:LibreMetaverse.Primitive.ConstructionData.State`.
pub state: u8,
/// C# member: `F:LibreMetaverse.Primitive.ConstructionData.profileCurve`.
pub profile_curve: u8,
pub profile_curve_with_field: u8,
}
impl PrimitiveConstructionData {
/// C# member: `M:LibreMetaverse.Primitive.ConstructionData.#ctor`.