{
  "name": "OFAPopulator",
  "version": "0.0.8",
  "summary": "OFA Populator offers an easy to implement yet powerful way to populate table and collection views.",
  "description": "                   By implementing section datasources and data fetcher protocol\n                   it becomes easy to populate table views and collection views.\n\n                   ```objc\n                   OFASectionPopulator *sectionPopulator = [[OFAReorderSectionPopulator alloc] initWithParentView:self.tableView\n                                                                                   dataProvider:[[ExampleDataProvider alloc] init]\n                                                                                 cellIdentifier:^NSString * (id obj, NSIndexPath *indexPath){ return @\"Section2\"; }\n                                                                               cellConfigurator:^(NSNumber *obj, UITableViewCell *cell, NSIndexPath *indexPath)\n{\n    cell.textLabel.text = [NSString stringWithFormat:@\"%@\", @([obj doubleValue] * [obj doubleValue])];\n    cell.textLabel.backgroundColor = [UIColor clearColor];\n} reorderCallBack:^(id sourceObj, id destinationObj, NSIndexPath *sourceIndexpath, NSIndexPath *destinationIndexPath) {\n    ;\n}];\nsectionPopulator.sectionIndexTitle = ^(NSUInteger section){\n    return @\"s\";\n};\n\n\nself.populator = [[OFAViewPopulator alloc] initWithSectionPopulators:@[sectionPopulator]];\n\n                   ``\n",
  "homepage": "http://vikingosegundo.github.io/ofapopulator",
  "license": {
    "type": "MIT",
    "file": "LICENSE"
  },
  "authors": {
    "Manuel Meyer": "vikingosegundo@gmail.com"
  },
  "social_media_url": "http://twitter.com/vikingosegundo",
  "platforms": {
    "ios": "7.0"
  },
  "source": {
    "git": "https://github.com/vikingosegundo/ofapopulator.git",
    "tag": "0.0.8"
  },
  "source_files": "OFAPopulator/OFA/**/*.*",
  "public_header_files": "OFAPopulator/OFA/Header/**/*.h"
}
