Swift: statement 'var' sin método getter / setter no permitido aquí

He intentado declarar la propiedad IBOutlet en la extensión de la class. Pero da error como

statement 'var' sin método getter / setter no permitido aquí

 class ExampleView : UIView { } extension ExampleView { @IBOutlet var btn1, btn2 : UIButton // here I got error. } 

Por favor, ¿alguien me sugiere la forma correcta de hacerlo?

De Extensions -> Computed Properties en The Swift Programming Language

NOTA

Las extensiones pueden agregar nuevas properties computadas, pero no pueden agregar properties almacenadas o agregar observadores de properties a las properties existentes.


Suma en respuesta al comentario de twlkyao: aquí está mi implementación de la propiedad absoluteValue de un Double

 extension Double { var absoluteValue: Double { if self >= 0 { return self } else { return -self } } } // Simple test -> BOTH println() should get called. var a = -10.0 if (a < 0) { println("Smaller than Zero") } if (a.absoluteValue > 5) { println("Absolute is > 5") } 

Desde el lenguaje de progtwigción Swift :

Las extensiones en Swift pueden:

  • Agregue properties computadas y properties estáticas calculadas.
  • Definir methods de instancia y methods de tipo
  • Proporcionar nuevos inicializadores.
  • Definir subíndices
  • Definir y usar nuevos types nesteds.

Lo que significa que no puede agregar IBOutlets y otras properties almacenadas. Si realmente quiere hacer trampa, puede crear vars globales o un object de contabilidad que le permitiría consultar estas vars o el object para agregar esas properties (y hacer que sean properties computadas).

Pero parece que iría en contra de las mejores prácticas. Solo lo haría si no hay absolutamente ninguna otra forma.