The playground, the notebook cells, the source editor with its marks, the inspector columns and the canvas are written once for both Apple platforms, with a file naming what the two frameworks call differently. The editor is where they really part company. The engine owns the image and its start-up, so a mission reaches the whole of Pharo.
23 lines
703 B
Swift
23 lines
703 B
Swift
import Foundation
|
|
import LumaCore
|
|
import SwiftyPharo
|
|
|
|
/// Reads the example catalogue in the image, so what nothing else looks at is
|
|
/// looked at somewhere.
|
|
|
|
CoreTextGlyphAtlas.install()
|
|
PharoWorkspace.boot()
|
|
try await PharoRuntime.shared.runningState()
|
|
try await PharoLumaBindings.install(into: PharoRuntime.shared)
|
|
|
|
let complaints = try await PharoExampleCheck.run(in: PharoRuntime.shared)
|
|
guard complaints.isEmpty else {
|
|
FileHandle.standardError.write(Data((complaints.joined(separator: "\n") + "\n").utf8))
|
|
FileHandle.standardError.write(
|
|
Data("\(complaints.count) complaint(s) about the example catalogue\n".utf8))
|
|
exit(1)
|
|
}
|
|
|
|
print("the example catalogue reads clean")
|
|
exit(0)
|