Swift の class や struct をスクリプトから利用する方法について紹介します。
はじめに
iPhone アプリを開発中に、 iPhone アプリ向けに実装した Swift の class や struct を、 iPhone アプリの中ではなく、 macOS 上で実行するスクリプトから利用する必要性が生じました。
その際に学んだことを紹介します。
方法
ステップ1: main.swift
の作成
まず、 Swift のスクリプトを main.swift
という名前で作成します。 Swift では、 main.swift
という名称のファイルのみが、 top-level code の記述を許されているようです。
実際、他の名称のファイルにおいて top-level code を記述すると、実行時に以下のようなエラーが発生します。
Expressions are not allowed at the top level
ステップ2: cat を利用したソースコードの連結
次に、 main.swift
から他のソースファイルで実装された class や struct を利用するために、例えば以下の方法で main.swift
と他のソースファイルを連結し、またそれらをスクリプトとして実行できます。
cat Shared/Model/*.swift Shared/Util/*.swift main.swift | swift -
参考文献
-
main.swift
について - 他ソースファイルと main.swift の連結方法について