Here is something I didn't notice before in swift. If you have a static field in a struct or a class, you can omit the struct/class name if there is enough information for the compiler to infer the type.

For example, your might have a settings struct that defines two static fields:

struct Settings {  
  static let Empty = Settings(....)
  static let Stored = Settings.loadFromSomeWhere()

You need to pass the settings to a function that uses these settings.

func fillSettings(settings: Settings) {  
  //Do something with the settings

This would be callable using fillSettings(Settings.Empty). But since the compiler is expecting a Settings Type, we can omit the type and just use the static field; fillSettings(.Empty)

The same works when assigning variables; let settings: Settings = .Stored.

The only note here, this won't work if swift cannot infer the correct type system. This would fail let settings = .Empty