Loading repository data…
Loading repository data…
mattt / repository
A block-based API for NSValueTransformer, with a growing collection of useful examples.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
A block-based API for NSValueTransformer, with a growing collection of useful examples.
NSValueTransformer,
while perhaps obscure to most iOS programmers,
remains a staple of OS X development.
Before Objective-C APIs got in the habit of
flinging block parameters hither and thither with reckless abandon, NSValueTransformer was the go-to way to encapsulate mutation functionality --- especially when it came to Bindings.
NSValueTransformer is convenient to use but a pain to set up.
To create a value transformer you have to
create a subclass,
implement a handful of required methods,
and register a singleton instance by name.
TransformerKit breathes new life into NSValueTransformer
by making them dead-simple to define and register:
NSString * const TTTCapitalizedStringTransformerName = @"TTTCapitalizedStringTransformerName";
[NSValueTransformer registerValueTransformerWithName:TTTCapitalizedStringTransformerName
transformedValueClass:[NSString class]
returningTransformedValueWithBlock:^id(id value) {
return [value capitalizedString];
}];
TransformerKit pairs nicely with InflectorKit and FormatterKit, providing well-designed APIs for manipulating user-facing content.
TransformerKit also contains a growing number of convenient transformers that your apps will love and cherish:
* - Reversible
Mattt (@mattt)
TransformerKit is released under the MIT license. See the LICENSE file for more info.