title: Loop through all object properties at runtime
body: <p>I want to create an Objective-C base class that performs an operation on all properties (of varying types) at runtime. Since the names and types of the properties will not always be known, how can I do something like this?</p>
  
  <pre><code>@implementation SomeBaseClass
  
  - (NSString *)checkAllProperties
  {
      for (property in properties) {
          // Perform a check on the property
      }
  }
  </code></pre>
  
  <p><strong>EDIT:</strong> This would be particularly useful in a custom <code>- (NSString *)description:</code> override.</p>