33#if OO_OXP_VERIFIER_ENABLED
35#import <Foundation/Foundation.h>
49+ (instancetype)verifierWithSchema:(NSDictionary *)schema;
50- (id)initWithSchema:(NSDictionary *)schema;
52- (void)setDelegate:(
id)delegate;
55- (BOOL)verifyPropertyList:(
id)plist named:(NSString *)name;
64+ (NSString *)descriptionForKeyPath:(NSArray *)keyPath;
69@interface NSObject (OOPListSchemaVerifierDelegate)
73withPropertyList:(
id)rootPList
74 named:(NSString *)name
75 testProperty:(
id)subPList
76 atPath:(NSArray *)keyPath
77 againstType:(NSString *)typeKey
78 error:(NSError **)outError;
84withPropertyList:(
id)rootPList
85 named:(NSString *)name
86 failedForProperty:(
id)subPList
87 withError:(NSError *)error
88 expectedType:(NSDictionary *)localSchema;
159@interface NSError (OOPListSchemaVerifierConveniences)
161- (NSArray *)plistKeyPath;
162- (NSString *)plistKeyPathDescription;
164- (NSSet *)missingRequiredKeys;
166- (Class)expectedClass;
167- (NSString *)expectedClassName;
NSString *const kMissingRequiredKeysErrorKey
NSString *const kExpectedClassErrorKey
OOINLINE BOOL OOPlistErrorIsSchemaError(OOPListSchemaVerifierErrorCode error)
NSString *const kUndefinedMacroErrorKey
NSString *const kSchemaKeyPathErrorKey
NSString *const kErrorsByOptionErrorKey
NSString *const kExpectedClassNameErrorKey
OOPListSchemaVerifierErrorCode
@ kPListErrorDictionaryMissingRequiredKeys
@ kPListErrorSchemaNoEnumerationValues
@ kPListErrorStartOfSchemaErrors
@ kPListErrorNumberIsNegative
@ kPListErrorEnumerationBadValue
@ kPListErrorSchemaBadTypeSpecifier
@ kPListErrorSchemaNoOneOfOptions
@ kPListErrorTypeMismatch
@ kPListErrorStringSubstringMissing
@ kPListErrorSchemaUnknownType
@ kPListErrorMaximumConstraintNotMet
@ kPListErrorDictionaryUnknownKey
@ kPListErrorMinimumConstraintNotMet
@ kPListErrorLastErrorCode
@ kPListDelegatedTypeError
@ kPListErrorStringSuffixMissing
@ kPListErrorOneOfNoMatch
@ kPListErrorSchemaUndefiniedMacroReference
@ kPListErrorSchemaBadComparator
@ kPListErrorSchemaUnknownFilter
@ kPListErrorStringPrefixMissing
NSString *const kUnnownFilterErrorKey
NSString *const kPListKeyPathErrorKey
NSString *const kUnknownTypeErrorKey
NSString *const kOOPListSchemaVerifierErrorDomain
NSString *const kMissingSubStringErrorKey
NSString *const kUnknownKeyErrorKey
uint32_t _badDelegateWarning
NSDictionary * _definitions