Modules
A module in Swift is code that is distributed as a single unit that can then be imported into other modules using Swift's import keyword. Frameworks and applications are examples of modules. In this chapter, we are going to look at a special kind of module that can be used to map the C libraries we wish to import.
The Linux port of Swift comes with a predefined module named Glibc that contains most of the Linux standard library; however, there are numerous headers that have not been imported within this module. This module is similar to the Darwin module on Apple platforms. Let's start off by looking at the Glibc module, and then we will look at defining our own module to import a third-party C library.
To see what headers are defined in the Glibc module, we can look at the glibc.modulemap file that is located in the usr/lib/swift/linux/x86_64/ directory of our Swift installation. Don't worry if you do not fully understand the format of this file at this time; we will...