diff --git a/AppKit/NSKeyValueBinding.m b/AppKit/NSKeyValueBinding.m index d811100c01..1c965357d4 100644 --- a/AppKit/NSKeyValueBinding.m +++ b/AppKit/NSKeyValueBinding.m @@ -70,3 +70,13 @@ NSString *const NSContinuouslyUpdatesValueBindingOption = @"NSContinuouslyUpdatesValue"; NSString *const NSDisplayPatternBindingOption = @"NSDisplayPattern"; + +// TODO: actually implement this stuff +@implementation NSObject (NSKeyValueBindingCreation) + +- (NSArray *) exposedBindings +{ + return @[]; +} + +@end diff --git a/AppKit/include/AppKit/NSKeyValueBinding.h b/AppKit/include/AppKit/NSKeyValueBinding.h index 9764a1277b..e9d30d3cb2 100644 --- a/AppKit/include/AppKit/NSKeyValueBinding.h +++ b/AppKit/include/AppKit/NSKeyValueBinding.h @@ -19,6 +19,7 @@ #import #import +#import APPKIT_EXPORT NSString *const NSObservedObjectKey; APPKIT_EXPORT NSString *const NSObservedKeyPathKey; @@ -62,3 +63,9 @@ APPKIT_EXPORT NSString *const NSConditionallySetsEnabledBindingOption; APPKIT_EXPORT NSString *const NSConditionallySetsEditableBindingOption; APPKIT_EXPORT NSString *const NSContinuouslyUpdatesValueBindingOption; APPKIT_EXPORT NSString *const NSDisplayPatternBindingOption; + +@interface NSObject (NSKeyValueBindingCreation) + +@property(readonly, copy) NSArray *exposedBindings; + +@end diff --git a/CoreData/CMakeLists.txt b/CoreData/CMakeLists.txt index 658843c261..a4fd7be443 100644 --- a/CoreData/CMakeLists.txt +++ b/CoreData/CMakeLists.txt @@ -42,6 +42,7 @@ set(CoreData_sources NSRelationshipDescription.m NSXMLPersistentStore.m NSMergeConflict.m + NSMergePolicy.m ) set_source_files_properties(${CoreData_sources} LANGUAGE C) diff --git a/CoreData/NSMergePolicy.m b/CoreData/NSMergePolicy.m new file mode 100644 index 0000000000..04584037a9 --- /dev/null +++ b/CoreData/NSMergePolicy.m @@ -0,0 +1,11 @@ +#import + +@implementation NSMergePolicy + +@end + +id NSErrorMergePolicy = nil; +id NSMergeByPropertyStoreTrumpMergePolicy = nil; +id NSMergeByPropertyObjectTrumpMergePolicy = nil; +id NSOverwriteMergePolicy = nil; +id NSRollbackMergePolicy = nil; diff --git a/CoreData/NSPersistentStoreCoordinator.m b/CoreData/NSPersistentStoreCoordinator.m index 438ab3e8e2..30b8cc012b 100644 --- a/CoreData/NSPersistentStoreCoordinator.m +++ b/CoreData/NSPersistentStoreCoordinator.m @@ -47,6 +47,8 @@ this software and associated documentation files (the "Software"), to deal in @"NSInferMappingModelAutomaticallyOption"; NSString *const NSReadOnlyPersistentStoreOption = @"NSReadOnlyPersistentStoreOption"; +NSString *const NSStoreModelVersionHashesKey = + @"NSStoreModelVersionHashesKey"; @implementation NSPersistentStoreCoordinator diff --git a/CoreData/include/CoreData/NSMergePolicy.h b/CoreData/include/CoreData/NSMergePolicy.h new file mode 100644 index 0000000000..ca62a2c44d --- /dev/null +++ b/CoreData/include/CoreData/NSMergePolicy.h @@ -0,0 +1,11 @@ +#import + +@interface NSMergePolicy : NSObject + +@end + +extern id NSErrorMergePolicy; +extern id NSMergeByPropertyStoreTrumpMergePolicy; +extern id NSMergeByPropertyObjectTrumpMergePolicy; +extern id NSOverwriteMergePolicy; +extern id NSRollbackMergePolicy;