Track LocalMods as part of monolith
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
-- Functions for creating userdata.
|
||||
|
||||
local Environment = require 'ConsentRequiredExtended.Util.Environment'
|
||||
local _ENV = Environment.PrepareEnvironment(_ENV)
|
||||
|
||||
---Create a userdata that references the type in a static context.
|
||||
---@param clrTypeName string The name of the type to point to.
|
||||
---@return userdata A userdata that references the type in a static context.
|
||||
function FromStringStatic(clrTypeName)
|
||||
LuaUserData.CreateStatic(clrTypeName)
|
||||
end
|
||||
|
||||
---Create a userdata that references the type described by a ClrType in a static context.
|
||||
---@param clrType ClrType ClrType that describes the type being referenced.
|
||||
---@return userdata A userdata that references the type in a static context.
|
||||
function FromClrTypeStatic(clrType)
|
||||
return FromStringStatic(clrType:GetFullName())
|
||||
end
|
||||
|
||||
---Create a userdata that references an instance of a CLR type with conversion.
|
||||
---@param value any A Lua value to convert to a CLR object of the given type and wrap up in a userdata.
|
||||
---@param clrType ClrType The CLR type to instantiate and wrap in the userdata.
|
||||
---@return userdata A userdata that references the an instance of the CLR type.
|
||||
function FromClrType(value, clrType)
|
||||
return LuaUserData.CreateUserDataFromType(value, clrType:GetUnderlyingType())
|
||||
end
|
||||
|
||||
---Register standard types with MoonSharp. For generics use RegisterClrType.ConstructedGenericType.
|
||||
---@param typeName string Name of the type to register.
|
||||
function RegisterStandardType(typeName)
|
||||
local desc = LuaUserData.RegisterType(typeName)
|
||||
_G.Descriptors[typeName] = desc
|
||||
end
|
||||
|
||||
return Environment.Export(_ENV)
|
||||
Reference in New Issue
Block a user