RBPropertyList Class Reference

Inherits from NSObject
Declared in RBPropertyList.h

Overview

Convenience methods for working with property lists.

+ valueWithPropertyList:atKeyPathWithIndexes:

Retrieves the value in the given property list at the given key path with indexes.

+ (nullable id)valueWithPropertyList:(nonnull id)propertyList atKeyPathWithIndexes:(nonnull NSString *)keyPath

Parameters

propertyList

The property list to extract the value from.

keyPath

The key path with indexes at which the value is expected.

Return Value

The resulting value, or nil if nothing was found.

Discussion

e.g. results.products[0].name

Declared In

RBPropertyList.h

+ propertyListByRemovingNullValues:

Removes NSNull values from the property list recursively.

+ (nonnull id)propertyListByRemovingNullValues:(nonnull id)propertyList

Parameters

propertyList

The property list to remove NSNull values from.

Return Value

The new property list with NSNull values removed.

Declared In

RBPropertyList.h

+ diffFromPropertyList:toPropertyList:additionDiff:removalDiff:

Analyses two property lists to determine the differences between them.

+ (void)diffFromPropertyList:(nonnull id)fromPropertyList toPropertyList:(nonnull id)toPropertyList additionDiff:(id __nullable *__nullable)additionDiffPropertyList removalDiff:(id __nullable *__nullable)removalDiffPropertyList

Parameters

fromPropertyList

The source property list to analyse.

toPropertyList

The destination property list to analyse.

additionDiffPropertyList

The items that were added to the destination as compared with the source.

removalDiffPropertyList

The items that were removed in the destination as compared with the source.

Declared In

RBPropertyList.h

+ transformPropertyList:dictionaryModifierBlock:valueModifierBlock:

Transforms a property list.

+ (nonnull id)transformPropertyList:(nonnull id)propertyList dictionaryModifierBlock:(nullable void ( ^ ) ( NSString *__nullable path , NSMutableDictionary *__nonnull dictionary ))dictionaryModifierBlock valueModifierBlock:(nullable id __nonnull ( ^ ) ( NSString *__nullable path , id __nonnull value ))valueModifierBlock

Parameters

propertyList

The property list to transform.

dictionaryModifierBlock

An optional block that is called on all dictionaries enabling their modification.

valueModifierBlock

An optional block that is called on all non-dictionary values, enabling their modification.

Return Value

The modified property list.

Declared In

RBPropertyList.h