Initial MetaCrate rewrite shell

This commit is contained in:
2026-08-08 09:49:22 +02:00
commit 115425cea7
66 changed files with 56984 additions and 0 deletions

View File

@@ -0,0 +1,11 @@
[package]
name = "libremetaverse-types"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
repository.workspace = true
description = "Core value-type shims for the MetaCrate LibreMetaverse rewrite"
[lints]
workspace = true

View File

@@ -0,0 +1,360 @@
// @generated by tools/generate_surface.py; do not edit by hand.
// Source: LibreMetaverse 2aa70bb68513b39795da5d13c88f31b86e85a3ba
#![allow(non_camel_case_types)]
/// `enum` shim for C# `LibreMetaverse.AssetType`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct AssetType;
impl AssetType {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.AssetType";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `enum` shim for C# `LibreMetaverse.AttachmentPoint`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct AttachmentPoint;
impl AttachmentPoint {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.AttachmentPoint";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `class` shim for C# `LibreMetaverse.CRC32`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct CRC32;
impl CRC32 {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.CRC32";
pub const CSHARP_KIND: &'static str = "class";
}
/// `class` shim for C# `LibreMetaverse.CacheDictionary`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct CacheDictionary<T0 = (), T1 = ()>(std::marker::PhantomData<(T0, T1)>);
impl<T0, T1> CacheDictionary<T0, T1> {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.CacheDictionary";
pub const CSHARP_KIND: &'static str = "class";
}
/// `class` shim for C# `LibreMetaverse.CacheDictionaryEnumerator`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct CacheDictionaryEnumerator;
impl CacheDictionaryEnumerator {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.CacheDictionaryEnumerator";
pub const CSHARP_KIND: &'static str = "class";
}
/// `enum` shim for C# `LibreMetaverse.ClickAction`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct ClickAction;
impl ClickAction {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.ClickAction";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `struct` shim for C# `LibreMetaverse.Color4`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct Color4;
impl Color4 {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.Color4";
pub const CSHARP_KIND: &'static str = "struct";
}
/// `class` shim for C# `LibreMetaverse.DoubleDictionary`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct DoubleDictionary<T0 = (), T1 = (), T2 = ()>(std::marker::PhantomData<(T0, T1, T2)>);
impl<T0, T1, T2> DoubleDictionary<T0, T1, T2> {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.DoubleDictionary";
pub const CSHARP_KIND: &'static str = "class";
}
/// `class` shim for C# `LibreMetaverse.EmptyRemovalStrategy`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct EmptyRemovalStrategy<T0 = ()>(std::marker::PhantomData<(T0,)>);
impl<T0> EmptyRemovalStrategy<T0> {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.EmptyRemovalStrategy";
pub const CSHARP_KIND: &'static str = "class";
}
/// `class` shim for C# `LibreMetaverse.EnumInfoAttribute`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct EnumInfoAttribute;
impl EnumInfoAttribute {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.EnumInfoAttribute";
pub const CSHARP_KIND: &'static str = "class";
}
/// `class` shim for C# `LibreMetaverse.EnumInfoExtensions`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct EnumInfoExtensions;
impl EnumInfoExtensions {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.EnumInfoExtensions";
pub const CSHARP_KIND: &'static str = "class";
}
/// `class` shim for C# `LibreMetaverse.ExpiringCache`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct ExpiringCache<T0 = (), T1 = ()>(std::marker::PhantomData<(T0, T1)>);
impl<T0, T1> ExpiringCache<T0, T1> {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.ExpiringCache";
pub const CSHARP_KIND: &'static str = "class";
}
/// `enum` shim for C# `LibreMetaverse.ExtraParamType`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct ExtraParamType;
impl ExtraParamType {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.ExtraParamType";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `enum` shim for C# `LibreMetaverse.FaceType`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct FaceType;
impl FaceType {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.FaceType";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `enum` shim for C# `LibreMetaverse.FolderType`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct FolderType;
impl FolderType {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.FolderType";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `enum` shim for C# `LibreMetaverse.HoleType`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct HoleType;
impl HoleType {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.HoleType";
pub const CSHARP_KIND: &'static str = "enum";
}
/// Shim for C# `LibreMetaverse.ICacheDictionaryRemovalStrategy`.
pub trait ICacheDictionaryRemovalStrategy<T0 = ()> {
const CSHARP_NAME: &'static str = "LibreMetaverse.ICacheDictionaryRemovalStrategy";
}
/// `enum` shim for C# `LibreMetaverse.InventoryType`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct InventoryType;
impl InventoryType {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.InventoryType";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `enum` shim for C# `LibreMetaverse.JointType`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct JointType;
impl JointType {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.JointType";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `class` shim for C# `LibreMetaverse.LruRemovalStrategy`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct LruRemovalStrategy<T0 = ()>(std::marker::PhantomData<(T0,)>);
impl<T0> LruRemovalStrategy<T0> {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.LruRemovalStrategy";
pub const CSHARP_KIND: &'static str = "class";
}
/// `enum` shim for C# `LibreMetaverse.Material`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct Material;
impl Material {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.Material";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `struct` shim for C# `LibreMetaverse.Matrix4`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct Matrix4;
impl Matrix4 {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.Matrix4";
pub const CSHARP_KIND: &'static str = "struct";
}
/// `class` shim for C# `LibreMetaverse.MruRemovalStrategy`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct MruRemovalStrategy<T0 = ()>(std::marker::PhantomData<(T0,)>);
impl<T0> MruRemovalStrategy<T0> {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.MruRemovalStrategy";
pub const CSHARP_KIND: &'static str = "class";
}
/// `class` shim for C# `LibreMetaverse.MultiValueDictionary`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct MultiValueDictionary<T0 = (), T1 = ()>(std::marker::PhantomData<(T0, T1)>);
impl<T0, T1> MultiValueDictionary<T0, T1> {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.MultiValueDictionary";
pub const CSHARP_KIND: &'static str = "class";
}
/// `enum` shim for C# `LibreMetaverse.ObjectCategory`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct ObjectCategory;
impl ObjectCategory {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.ObjectCategory";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `enum` shim for C# `LibreMetaverse.PCode`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct PCode;
impl PCode {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.PCode";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `enum` shim for C# `LibreMetaverse.PathCurve`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct PathCurve;
impl PathCurve {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.PathCurve";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `enum` shim for C# `LibreMetaverse.PhysicsShapeType`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct PhysicsShapeType;
impl PhysicsShapeType {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.PhysicsShapeType";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `enum` shim for C# `LibreMetaverse.Platform`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct Platform;
impl Platform {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.Platform";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `enum` shim for C# `LibreMetaverse.PrimFlags`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct PrimFlags;
impl PrimFlags {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.PrimFlags";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `enum` shim for C# `LibreMetaverse.PrimType`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct PrimType;
impl PrimType {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.PrimType";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `enum` shim for C# `LibreMetaverse.ProfileCurve`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct ProfileCurve;
impl ProfileCurve {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.ProfileCurve";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `struct` shim for C# `LibreMetaverse.Quaternion`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct Quaternion;
impl Quaternion {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.Quaternion";
pub const CSHARP_KIND: &'static str = "struct";
}
/// `struct` shim for C# `LibreMetaverse.Ray`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct Ray;
impl Ray {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.Ray";
pub const CSHARP_KIND: &'static str = "struct";
}
/// `enum` shim for C# `LibreMetaverse.SaleType`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct SaleType;
impl SaleType {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.SaleType";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `enum` shim for C# `LibreMetaverse.SculptType`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct SculptType;
impl SculptType {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.SculptType";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `enum` shim for C# `LibreMetaverse.SoundFlags`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct SoundFlags;
impl SoundFlags {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.SoundFlags";
pub const CSHARP_KIND: &'static str = "enum";
}
/// `class` shim for C# `LibreMetaverse.TokenBucket`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct TokenBucket;
impl TokenBucket {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.TokenBucket";
pub const CSHARP_KIND: &'static str = "class";
}
/// `record struct` shim for C# `LibreMetaverse.UUID`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct UUID;
impl UUID {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.UUID";
pub const CSHARP_KIND: &'static str = "record_struct";
}
/// `class` shim for C# `LibreMetaverse.Utils`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct Utils;
impl Utils {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.Utils";
pub const CSHARP_KIND: &'static str = "class";
}
/// `struct` shim for C# `LibreMetaverse.Vector2`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct Vector2;
impl Vector2 {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.Vector2";
pub const CSHARP_KIND: &'static str = "struct";
}
/// `struct` shim for C# `LibreMetaverse.Vector3`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct Vector3;
impl Vector3 {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.Vector3";
pub const CSHARP_KIND: &'static str = "struct";
}
/// `struct` shim for C# `LibreMetaverse.Vector3d`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct Vector3d;
impl Vector3d {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.Vector3d";
pub const CSHARP_KIND: &'static str = "struct";
}
/// `struct` shim for C# `LibreMetaverse.Vector4`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct Vector4;
impl Vector4 {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.Vector4";
pub const CSHARP_KIND: &'static str = "struct";
}
/// `enum` shim for C# `LibreMetaverse.WearableType`; members remain intentionally unimplemented.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct WearableType;
impl WearableType {
pub const CSHARP_NAME: &'static str = "LibreMetaverse.WearableType";
pub const CSHARP_KIND: &'static str = "enum";
}

View File

@@ -0,0 +1,5 @@
//! Core value types corresponding to `LibreMetaverse.Types`.
mod generated;
pub use generated::*;