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:
@@ -1,18 +1,18 @@
|
||||
internal import CPlaydate
|
||||
|
||||
extension File {
|
||||
/// How to open a file.
|
||||
/// How to open a file. Wraps `FileOptions`.
|
||||
public struct Options: OptionSet, Sendable {
|
||||
public let rawValue: UInt32
|
||||
public init(rawValue: UInt32) { self.rawValue = rawValue }
|
||||
|
||||
/// Read from the game pdx, then the Data directory.
|
||||
/// Read from the pdx only; add `.readData` to search the Data directory first.
|
||||
public static let read = Options(rawValue: UInt32(kFileRead.rawValue))
|
||||
/// Read from the Data directory only.
|
||||
/// Read from the Data directory.
|
||||
public static let readData = Options(rawValue: UInt32(kFileReadData.rawValue))
|
||||
/// Write to the Data directory, truncating an existing file.
|
||||
/// Write to the Data directory, truncating.
|
||||
public static let write = Options(rawValue: UInt32(kFileWrite.rawValue))
|
||||
/// Write to the Data directory, appending to an existing file.
|
||||
/// Write to the Data directory, appending.
|
||||
public static let append = Options(rawValue: UInt32(kFileAppend.rawValue))
|
||||
|
||||
var cValue: FileOptions { FileOptions(FileOptions.RawValue(rawValue)) }
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
extension File {
|
||||
/// Information about a file or directory, mirroring `FileStat`.
|
||||
/// File or directory information. Mirrors `FileStat`.
|
||||
public struct Stat: Sendable {
|
||||
/// Whether the path is a directory.
|
||||
public let isDirectory: Bool
|
||||
/// The file's size, in bytes.
|
||||
/// Size in bytes.
|
||||
public let size: UInt32
|
||||
/// The time the file was last modified.
|
||||
/// Last modification time; `weekday` is 0 (unset).
|
||||
public let modified: System.DateTime
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user