docs: def _imm_dir(self):
      '''
      An immutable object's dir function should list not only its attributes, but also its un-cached
      lazy values.
      '''
      dir0 = set(dir(self.__class__))
      dir0.update(self.__dict__.keys())
      dir0.update(six.iterkeys(_imm_value_data(self)))
      return sorted(list(dir0))