update guide documentacion developer book swift import require read-eval-print-loop

guide - Swift REPL: ¿cómo importar, cargar, evaluar o requerir un archivo.swift?



update swift (4)

Parece que no es posible importar el archivo y hacer que Xcode use REPL para él usando las especificaciones que le diste. Creo que todavía puedes hacerlo creando un marco adecuado, pero no es exactamente lo que estabas buscando.

En Swift REPL, ¿cómo importar (también cargar, evaluar, requerir) un archivo de texto * .swift típico?

  • Quiero usar el código de este archivo: ~/src/Foo.swift

  • La sintaxis de este tipo no funciona: import ~/src/Foo.swift

Para comparacion:

  • Una solución equivalente en Swift REPL para un marco es: import Foundation

  • Una solución equivalente en el Ruby REPL para un archivo * .ruby es: require "~/src/foo"

Estas son preguntas similares que son / no / lo que estoy preguntando:

  • Cómo usar / hacer un script de línea de comandos Swift, ejecutable, módulo, etc.

  • Cómo usar / hacer un parque infantil XCode, proyecto, biblioteca, marco, etc.

  • Cómo iniciar REPL con una lista de archivos preexistente.


Simplemente inserte la línea de shebang en la parte superior de su secuencia de comandos:

#!/usr/bin/env xcrun swift


Rápidamente, no puede importar un archivo típico * .swift.

Para Import Declaration solo puede ser la siguiente sintaxis:

"Importación-declaración → atributos opt -import-kind opt -import-path
import-kind → typealias | struct | clase | enum | protocolo | var | Func
Ruta de importación → identificador de ruta de importación | import-path-identifier.import-path
Identificador de ruta de importación → identificador | operador"

De: Apple Inc. "El lenguaje de programación Swift (Swift 2)". IBooks.

que se puede describir como estos formatos:

module importación
Importar module import kind . symbol name
module importación. submodule

import head.swift es compatible con import import-kind module.symbol-name

Por lo general, compila los archivos que desea importar como marco. Luego puede considerarse como un módulo. use -F framework_directory/ para especificar la ruta de búsqueda de marcos de terceros.

  1. Crea un archivo. Por ejemplo:

    // test.swift import headtest print("Hello World")

  2. abre tu terminal

  3. vaya al directorio donde crea el archivo.
  4. ejecutar línea de comando

    swift -F headtest test.swift

Y hecho.


Necesitas usar -I, así que si tu archivo modulename.swiftmodule está en ~ / mymodules que en el lanzamiento rápido con

swift -I ~/mymodules

y luego podrás importar tu módulo

import module name

Debería ser así de fácil