SPM: Subfolders in a Module


(Toni Suter) #1

Hi everyone,

Let's assume there's a Swift package with the following Layout:

MyPackage/
├── Package.swift
└── Sources
    └── MyModule
        ├── SubFolder
        │ └── MyClass.swift
        └── main.swift

As far as I can tell, there's still just one module called MyModule and the subfolder doesn't create
a nested module or something like that. Is that correct? Do only top level folders in the Sources directory
become modules?

Thanks and best regards,
Toni


(Ankit Agarwal) #2

Yup thats correct, in this case there will be one executable module named
`MyModule` with sources being `SubFolder/MyClass.swift` and `main.swift`.

···

On Fri, Sep 16, 2016 at 12:21 AM, Toni Suter via swift-users < swift-users@swift.org> wrote:

Hi everyone,

Let's assume there's a Swift package with the following Layout:

MyPackage/
├── Package.swift
└── Sources
    └── MyModule
        ├── SubFolder
        │ └── MyClass.swift
        └── main.swift

As far as I can tell, there's still just one module called MyModule and
the subfolder doesn't create
a nested module or something like that. Is that correct? Do only top level
folders in the Sources directory
become modules?

--
Ankit


(Toni Suter) #3

Ok, thank you very much!

Best regards
Toni

···

Am 16.09.2016 um 07:26 schrieb Ankit Agarwal <ankit@ankit.im>:

On Fri, Sep 16, 2016 at 12:21 AM, Toni Suter via swift-users <swift-users@swift.org <mailto:swift-users@swift.org>> wrote:
Hi everyone,

Let's assume there's a Swift package with the following Layout:

MyPackage/
├── Package.swift
└── Sources
    └── MyModule
        ├── SubFolder
        │ └── MyClass.swift
        └── main.swift

As far as I can tell, there's still just one module called MyModule and the subfolder doesn't create
a nested module or something like that. Is that correct? Do only top level folders in the Sources directory
become modules?

Yup thats correct, in this case there will be one executable module named `MyModule` with sources being `SubFolder/MyClass.swift` and `main.swift`.

--
Ankit