~/talk

Limited import clarification and its effect

Talkat try! Swift Tokyo 2019 · 2019-03-21..03-22· [swift]

Swift import accepts attributes like @_exported and @_testable and can target submodules with import Module.Submodule, plus a limit by kind (struct class protocol typealias func) syntax to restrict which symbols are pulled in. Examples show SceneKit submodules exposing model-building APIs and conflicts resolved by qualifying the module. Measured with 100,000 extra methods, build time and binary MD5 remain effectively unchanged, so the compiler optimizes away size/performance differences — use limited imports for clarity and name control, not for binary shrinkage.

AI-written summary · about

  1. 0:00Intro
  2. 0:28Import Declaration
  3. 0:47Attributes
  4. 1:01@testable
  5. 1:12@_exported
  6. 1:27Submodule import
  7. 1:42Example: SceneKit initializer
  8. 2:13Kind import
  9. 3:22Example: Conflict method name
  10. 4:02Import Options
  11. 4:18Measuring the build times
  12. 4:38Binary size
  13. 4:57Pros & Cons
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.