title: Call methods from Swift initializer
body: <p>Let's say I have the following class in Swift (which has obvious problems)</p>
  
  <pre><code>class MyClass {
      let myProperty: String
  
      init() {
          super.init()
          self.setupMyProperty()
      }
  
      func setupMyProperty() {
          myProperty = "x"
      }
  }
  </code></pre>
  
  <p>This is overly simplified but I'm basically trying to delegate the initialization of <code>myProperty</code> into the <code>setupMyProperty()</code> method. It's a pattern I use often to break down the different parts of the setup of a class.</p>
  
  <p>But of course, I can't call <code>self</code> until the super initializer has run, and I can't run the super initializer until all the properties have been set, so I'm in a catch 22. On top of it since <code>setupMyProperty()</code> isn't considered an initializer, it won't be able to assign <code>myProperty</code> anyway.</p>
  
  <p>Can anyone tell me how to implement this pattern in Swift?</p>