Thomas Goyne
5d256728d2
USe more const refs to avoid copies
2015-09-28 15:33:42 -07:00
Thomas Goyne
cc6364fff3
Make a bunch of things const
2015-09-28 15:33:42 -07:00
Thomas Goyne
c54ff5a44d
Make a bunch of things const
2015-09-28 15:33:42 -07:00
Thomas Goyne
fb186248a1
Remove an unused function
2015-09-28 15:33:42 -07:00
Thomas Goyne
89c8f9e125
Remove an unused function
2015-09-28 15:33:42 -07:00
Thomas Goyne
515ce6296f
Share ExternalCommitHelpers between Realm instances for a single path
2015-09-28 15:33:42 -07:00
Thomas Goyne
3d9d7be0d6
Share ExternalCommitHelpers between Realm instances for a single path
2015-09-28 15:33:42 -07:00
Thomas Goyne
873d24f3f0
Allow more nullable property types when supported
2015-09-28 15:33:42 -07:00
Thomas Goyne
76d62bbc57
Allow more nullable property types when supported
2015-09-28 15:33:42 -07:00
Thomas Goyne
663492e9da
Honor is_nullable when creating columns
2015-09-28 15:33:41 -07:00
Thomas Goyne
d7fd525dc2
Honor is_nullable when creating columns
2015-09-28 15:33:41 -07:00
Thomas Goyne
ce39ef965f
Refactor schema initialization a bit
...
Change schema verification to operate on a pair of Schema objects rather than a
Schema and a Group to eliminate some redundant work done, defer some of the
work done for migrations to within the migration block to avoid doing it
unnecessarily, and make passing in a custom schema in the Config when creating
a Realm entirely equivalent to calling update_schema() afterwards.
2015-09-28 15:33:41 -07:00
Thomas Goyne
f7222803df
Refactor schema initialization a bit
...
Change schema verification to operate on a pair of Schema objects rather than a
Schema and a Group to eliminate some redundant work done, defer some of the
work done for migrations to within the migration block to avoid doing it
unnecessarily, and make passing in a custom schema in the Config when creating
a Realm entirely equivalent to calling update_schema() afterwards.
2015-09-28 15:33:41 -07:00
Thomas Goyne
4dd72d47a0
Move the interprocess notification functionality to the object store
2015-09-28 15:33:41 -07:00
Thomas Goyne
00c9177b56
Move the interprocess notification functionality to the object store
2015-09-28 15:33:41 -07:00
Thomas Goyne
5ffeedb233
Shuffle stuff around and clean some things up
2015-09-28 15:33:41 -07:00
Thomas Goyne
766178d30d
Shuffle stuff around and clean some things up
2015-09-28 15:33:41 -07:00
Thomas Goyne
429a652eeb
Improve array KVO performance a bit
2015-09-28 15:33:40 -07:00
Thomas Goyne
8350e55a0c
Improve array KVO performance a bit
2015-09-28 15:33:40 -07:00
Thomas Goyne
2f869541c7
Skip PK uniqueness checking when first creating a Realm file
2015-09-28 15:33:40 -07:00
Thomas Goyne
e65ad57e00
Skip PK uniqueness checking when first creating a Realm file
2015-09-28 15:33:40 -07:00
Thomas Goyne
9129add439
Improve performance of realm_requires_update() and make more things const
2015-09-28 15:33:40 -07:00
Thomas Goyne
fc48c88e69
Improve performance of realm_requires_update() and make more things const
2015-09-28 15:33:40 -07:00
Thomas Goyne
9403c6f837
Port some of the KVO support functionality to the object store
2015-09-28 15:33:40 -07:00
Thomas Goyne
fc0de384a6
Port some of the KVO support functionality to the object store
2015-09-28 15:33:40 -07:00
Thomas Goyne
524edf04c6
Add the ability to bypass the Realm cache entirely
2015-09-28 15:33:39 -07:00
Thomas Goyne
513d781572
Add the ability to bypass the Realm cache entirely
2015-09-28 15:33:39 -07:00
Thomas Goyne
aae979ce58
Rework change notifications
...
Switch to an abstract class rather than std::function in preparation for having
more kinds of notifications with different arguments for KVO.
2015-09-28 15:33:39 -07:00
Thomas Goyne
219ef48bf4
Rework change notifications
...
Switch to an abstract class rather than std::function in preparation for having
more kinds of notifications with different arguments for KVO.
2015-09-28 15:33:39 -07:00
Thomas Goyne
ce8060b4b3
Add Realm::get_schema_version()
2015-09-28 15:33:39 -07:00
Thomas Goyne
7fda90c3b2
Add Realm::get_schema_version()
2015-09-28 15:33:39 -07:00
Thomas Goyne
6df3719925
Change realm::Schema to a vector rather than a map
...
Much faster to copy and destroy with no loss in lookup performance.
2015-09-28 15:33:38 -07:00
Thomas Goyne
1d25766ebb
Change realm::Schema to a vector rather than a map
...
Much faster to copy and destroy with no loss in lookup performance.
2015-09-28 15:33:38 -07:00
Thomas Goyne
bf3d9bd452
Remove property.hpp include from object_schema.hpp
2015-09-28 15:33:38 -07:00
Thomas Goyne
d2a74958f0
Remove property.hpp include from object_schema.hpp
2015-09-28 15:33:38 -07:00
Thomas Goyne
6b43c4ca31
Convert RLMRealmConfiguration to a wrapper around Realm::Config
2015-09-28 15:33:38 -07:00
Thomas Goyne
720020ed06
Convert RLMRealmConfiguration to a wrapper around Realm::Config
2015-09-28 15:33:38 -07:00
Thomas Goyne
169bdb6648
Use NSDMIs for realm::Property
2015-09-28 15:33:38 -07:00
Thomas Goyne
25f32e6f88
Use NSDMIs for realm::Property
2015-09-28 15:33:38 -07:00
Thomas Goyne
c6d82ad436
Don't cache dynamic realms in the ObjectStore cache either
2015-09-28 15:33:37 -07:00
Thomas Goyne
a4edbcecfa
Don't cache dynamic realms in the ObjectStore cache either
2015-09-28 15:33:37 -07:00
Thomas Goyne
06ce25053d
Eliminate some copies
2015-09-28 15:33:37 -07:00
Thomas Goyne
861a8c2c9c
Eliminate some copies
2015-09-28 15:33:37 -07:00
Thomas Goyne
6a491eaf1b
Use NSDMIs for Realm
2015-09-28 15:33:37 -07:00
Thomas Goyne
e61833c26e
Use NSDMIs for Realm
2015-09-28 15:33:37 -07:00
Thomas Goyne
9c224fb141
Reduce s_init_mutex's scope
2015-09-28 15:33:37 -07:00
Thomas Goyne
938668904e
Reduce s_init_mutex's scope
2015-09-28 15:33:37 -07:00
Thomas Goyne
d6566ff3c1
Use NSDMIs for Realm::Config and make it moveable
2015-09-28 15:33:37 -07:00
Thomas Goyne
292d9cf820
Use NSDMIs for Realm::Config and make it moveable
2015-09-28 15:33:37 -07:00
Thomas Goyne
5c1e20a7b1
Store a copy of the encryption key
2015-09-28 15:33:36 -07:00