Ответ 1
Вам нужно использовать -I, поэтому, если ваш файл modulename.swiftmodule находится в ~/mymodules, чем запуск swift с
swift -I ~/mymodules
а затем вы сможете импортировать свой модуль
import module name
Должно быть, это легко
В Swift REPL, как импортировать (a.k.a. загрузить, оценить, потребовать) типичный текст *.swift файл?
Я хочу использовать код из этого файла: ~/src/Foo.swift
Синтаксис вроде этого не работает: import ~/src/Foo.swift
Для сравнения:
Эквивалентное решение в Swift REPL для фреймворка: import Foundation
Эквивалентное решение в Ruby REPL для файла *.ruby: require "~/src/foo"
Это похожие вопросы, которые/нет/то, что я спрашиваю:
Как использовать/выполнить командную строку Swift script, исполняемый файл, модуль и т.д.
Как использовать/создавать игровые площадки XCode, проект, библиотеку, фреймворк и т.д.
Как запустить REPL с уже существующим списком файлов.
Вам нужно использовать -I, поэтому, если ваш файл modulename.swiftmodule находится в ~/mymodules, чем запуск swift с
swift -I ~/mymodules
а затем вы сможете импортировать свой модуль
import module name
Должно быть, это легко
Просто вставьте строку shebang в верхней части вашего script:
#!/usr/bin/env xcrun swift
Похоже, что невозможно импортировать файл и получить Xcode для использования REPL для него, используя предоставленные вами спецификации. Я думаю, вы все еще можете сделать это, создав правильную структуру, но это не совсем то, что вы искали.
Для Import Declaration
может быть только следующий синтаксис:
"Import-declaration → attributesopt импорт import-kindopt import-path
импорт-вид → титаны | структура | класс | перечисление | протокол | вар | FUNC
Import-path → import-path-identifier | импорт-путь-identifier.import-путь
Import-path-identifier → идентификатор | Оператор" на
От: Apple Inc. "Быстрый язык программирования (Swift 2)". IBooks.
который может быть описан как эти форматы:
import
module
importimport kind
module
.symbol name
importmodule
.submodule
import head.swift
несовместим с import import-kind module.symbol-name
Обычно компилируйте файлы, которые вы хотите импортировать в качестве рамки. Затем его можно рассматривать как модуль. используйте -F framework_directory/
, чтобы указать путь поиска сторонних фреймворков.
Создайте файл. Например:
// test.swift
import headtest
print("Hello World")
откройте терминал
выполнить командную строку
swift -F headtest test.swift
И сделано.