1
1
import ArgumentParser
2
2
import SystemPackage
3
- import WAT
4
3
import WasmKit
5
4
import WasmKitWASI
6
5
@@ -120,12 +119,12 @@ struct Run: ParsableCommand {
120
119
let module : Module
121
120
if verbose, #available( macOS 13 . 0 , iOS 16 . 0 , watchOS 9 . 0 , tvOS 16 . 0 , * ) {
122
121
let ( parsedModule, parseTime) = try measure {
123
- try self . parseWasm ( filePath: FilePath ( path) )
122
+ try parseWasm ( filePath: FilePath ( path) )
124
123
}
125
124
log ( " Finished parsing module: \( parseTime) " , verbose: true )
126
125
module = parsedModule
127
126
} else {
128
- module = try self . parseWasm ( filePath: FilePath ( path) )
127
+ module = try parseWasm ( filePath: FilePath ( path) )
129
128
}
130
129
131
130
let ( interceptor, finalize) = try deriveInterceptor ( )
@@ -149,23 +148,6 @@ struct Run: ParsableCommand {
149
148
}
150
149
}
151
150
152
- /// Parses a `.wasm` or `.wat` module.
153
- func parseWasm( filePath: FilePath ) throws -> Module {
154
- if filePath. extension == " wat " , #available( macOS 11 . 0 , iOS 14 . 0 , macCatalyst 14 . 0 , tvOS 14 . 0 , visionOS 1 . 0 , watchOS 7 . 0 , * ) {
155
- let fileHandle = try FileDescriptor . open ( filePath, . readOnly)
156
- defer { try ? fileHandle. close ( ) }
157
-
158
- let size = try fileHandle. seek ( offset: 0 , from: . end)
159
-
160
- let wat = try String ( unsafeUninitializedCapacity: Int ( size) ) {
161
- try fileHandle. read ( fromAbsoluteOffset: 0 , into: . init( $0) )
162
- }
163
- return try WasmKit . parseWasm ( bytes: wat2wasm ( wat) )
164
- } else {
165
- return try WasmKit . parseWasm ( filePath: filePath)
166
- }
167
- }
168
-
169
151
/// Derives the runtime interceptor based on the command line arguments
170
152
func deriveInterceptor( ) throws -> ( interceptor: EngineInterceptor ? , finalize: ( ) -> Void ) {
171
153
var interceptors : [ EngineInterceptor ] = [ ]
0 commit comments