Swift 6.4 migration and exhancements (#1)

This PR contains the work done to update the library and the attached example project to use the Swift 6.4 computer as a minimum supported version and also, to use the latest features introduced in it.

Reviewed-on: #1
Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
This commit was merged in pull request #1.
This commit is contained in:
2026-09-18 13:15:08 +00:00
committed by javier
parent d0a561b91f
commit c5037dd716
105 changed files with 1390 additions and 1397 deletions
@@ -1,11 +1,8 @@
extension Lua {
/// A constant published on a registered class.
/// A class constant for `Lua.registerClass`. Wraps `lua_val`.
public enum ClassValue {
/// An integer constant.
case int(name: String, value: UInt32)
/// A floating-point constant.
case float(name: String, value: Float)
/// A string constant.
case string(name: String, value: String)
}
}
@@ -1,8 +1,9 @@
internal import CPlaydate
extension Lua {
/// The type of a value on the Lua stack.
/// The type of a value on the Lua stack. Wraps `LuaType`.
public enum Kind: UInt32, Sendable {
/// Also used for unrecognized type codes.
case `nil` = 0
case bool = 1
case int = 2
@@ -10,7 +11,9 @@ extension Lua {
case string = 4
case table = 5
case function = 6
/// A coroutine.
case thread = 7
/// Userdata.
case object = 8
init(_ type: LuaType) { self = Kind(rawValue: UInt32(type.rawValue)) ?? .nil }