Commit Graph

772 Commits

Author SHA1 Message Date
Ari Lazier f402a45a40 change argument syntax to use $ instead of {} 2015-11-19 13:05:37 -08:00
Ari Lazier 5c56a5c87c tests for all expressions/operators 2015-11-19 13:05:37 -08:00
Ari Lazier 735b49ff2a fix and tests for arguments 2015-11-19 13:05:37 -08:00
Ari Lazier 676b86d194 more grammer tests 2015-11-19 13:05:37 -08:00
Ari Lazier f46e92468c add basic test harness for grammer validation 2015-11-19 13:05:37 -08:00
Ari Lazier 7829d21bd4 add macro to enable/disable debug token printing 2015-11-19 13:05:37 -08:00
Ari Lazier 9309bbfbf8 make precondition a macro 2015-11-19 13:05:37 -08:00
Ari Lazier f3d7855c99 test and fix for date queries 2015-11-19 13:05:37 -08:00
Ari Lazier 3a198ec507 support query format strings 2015-11-19 13:05:37 -08:00
Ari Lazier 3b698400b7 support for querying boolean properties 2015-11-19 13:05:37 -08:00
Ari Lazier bb16ffa7fe add required padding around string operators, use pegtl_istring_t 2015-11-19 13:05:37 -08:00
Ari Lazier e7e4b6715e move query building to a separate file 2015-11-19 13:05:37 -08:00
Ari Lazier 2f1c26ad73 remove duplicate code, add argument expression type 2015-11-19 13:05:37 -08:00
Ari Lazier c776290df8 code cleanup, bugfixes 2015-11-19 13:05:37 -08:00
Ari Lazier d8c89c7098 support for truepredicate/falsepredicate, single quote strings - all tests now pass 2015-11-19 13:05:37 -08:00
Ari Lazier c7c0698ad0 hook it up 2015-11-19 13:05:37 -08:00
Ari Lazier 11b27dbdbf store negated predicates in parse tree 2015-11-19 13:05:37 -08:00
Ari Lazier 4b3417736f support OR with proper precedence 2015-11-19 13:05:37 -08:00
Ari Lazier 5bdc6eba93 parse tree construction 2015-11-19 13:05:37 -08:00
Ari Lazier 2f287d046d full grammar 2015-11-19 13:05:37 -08:00
Ari Lazier ed4e59c8d0 compound predicates 2015-11-19 13:05:37 -08:00
Ari Lazier 6ea80c4ecd beginnings of a parser 2015-11-19 13:05:37 -08:00
Ari Lazier 9f995d492b Merge pull request #150 from realm/al-os-feedback
Changes being made in response to feedback on the object store branch.
2015-11-19 12:14:52 -08:00
Ari Lazier d1a579c922 size_t, no std::size_t 2015-11-19 07:07:33 -08:00
Ari Lazier 55851f6d99 fix for rpc constants and other pr feedback 2015-11-18 17:55:30 -08:00
Ari Lazier e3c9ec8ee7 fixes to list.cpp/hpp based on object store pr feedback - use lowercase strings for property names 2015-11-18 14:36:46 -08:00
Ari Lazier a12b6caedb fixes to list.cpp/hpp based on object store pr feedback - use lowercase strings for property names 2015-11-18 14:36:46 -08:00
Scott Kyle 76caaa8a88 Merge pull request #137 from realm/sk-data-props
Update data properties to return ArrayBuffers
2015-11-17 13:49:33 -08:00
Scott Kyle 7b115a934b ArrayBufferView objects now fully supported
Previously we were not accounting for the byte offsets and misunderstood how the Uint8Array constructor worked. The tests now confirm everything works as expected with multiple different typed arrays and slices of the data.
2015-11-17 13:32:32 -08:00
Scott Kyle 7f32ab0b88 Improve JS test assertion failure messages
Only the first line is shown in Xcode, so we just a dash to separate the custom message from the helpful one provided by the assertion instead.
2015-11-17 13:32:32 -08:00
Scott Kyle 9d373e630a Update data properties to return ArrayBuffers
As a convenience, the setters will take typed Arrays (e.g. Uint8Array) since that is a common representation of data in JS (as they are "views" of ArrayBuffer objects).

The tests have been updated to reflect this new behavior.
2015-11-17 13:32:31 -08:00
Scott Kyle 616f78ea07 Add support for data properties in RPC layer
The data is base64 encoded before being sent via the RPC.
2015-11-17 13:32:31 -08:00
Scott Kyle 3bf84a1b6f Update data properties to return ArrayBuffers
As a convenience, the setters will take typed Arrays (e.g. Uint8Array) since that is a common representation of data in JS (as they are "views" of ArrayBuffer objects).

The tests have been updated to reflect this new behavior.
2015-11-17 13:32:31 -08:00
Ari Lazier bc7111bd2e Merge pull request #147 from realm/al-headers
Fix for wrong headers when building release
2015-11-17 13:10:41 -08:00
Ari Lazier 289da9d213 move header out of extern C 2015-11-17 12:46:22 -08:00
Ari Lazier 419982808b fix for wrong headers when building release 2015-11-17 12:44:17 -08:00
Ari Lazier fbd59381bb Merge pull request #143 from realm/al-thread-safe
Fix thread safety issues when refreshing the simulator
2015-11-16 17:58:32 -08:00
Ari Lazier 52fa3e8b1c no-op if module has been deallocated 2015-11-16 17:57:06 -08:00
Ari Lazier 159931e4ec pr fixes 2015-11-16 17:36:28 -08:00
Ari Lazier f046e4a8ac clear realm cache after refreshing simulator 2015-11-16 11:26:36 -08:00
Ari Lazier 85286b8807 block refresh until the last context has finished execution 2015-11-16 11:16:09 -08:00
Ari Lazier 53911fefb6 block refresh until the last context has finished execution 2015-11-16 11:16:09 -08:00
Ari Lazier c4203e80c4 Fix terminology 2015-11-16 06:46:07 -08:00
Ari Lazier e4732994b7 integrate latest object store changes 2015-11-13 18:20:40 -08:00
Ari Lazier df15c5f722 integrate latest object store changes 2015-11-13 18:20:40 -08:00
Ari Lazier 638ee4d3b4 integrate latest object store changes 2015-11-13 18:20:27 -08:00
Ari Lazier 52da420496 integrate latest object store changes 2015-11-13 18:20:27 -08:00
Ari Lazier b91c69a3b5 Squashed 'src/object-store/' changes from 043f5ff..7701ba1
7701ba1 Merge pull request #16 from realm/tg-close
883ef12 Add Realm::close() and call it in RealmCache::clear()
e9ca54e Merge pull request #12 from realm/tg-core-0.94.4
0823a62 Merge pull request #13 from realm/tg-is-empty
62f59d9 Merge pull request #15 from realm/tg-file-error-path
b93e5ce Include the path of the file which actually failed to open in exceptions
e1e9cd8 Add ObjectStore::is_empty()
52e7e61 Update for core 0.94.4
271432b Merge pull request #11 from realm/kd-rename-delegate-to-bindingcontext
db36ca5 Remove Realm suffix
70e1967 Rename realm delegate in transact_log_handler as well
4973827 Rename RealmDelegate to RealmBindingContext
347145b Merge pull request #8 from realm/mar-migrate-required-to-optional
0b45772 Add a test showing our behavior when migrating from an optional column to a required column.
9f1702a Support migrating required columns to optional, preserving their contents.
f5b790c Merge pull request #6 from realm/tg-impl
6dfeaf8 Move things which are not part of the API to an impl directory/namespace
513e483 Merge pull request #4 from realm/tg-realm
f646777 Send changes_available() even if autorefresh is enabled
21d32bf Add a bit of documentation for RealmDelegate
95c80c9 Fix error in cleanup after an error during a migration
b7936bb Simplify column shifting for removed properties a little
a0f1dab Add a Schema class, move lookup by name and internal-consistency checks there
b381437 Make Realm::compact() more robust
6133eeb Reduce the scope of a variable
0c111a2 Fix a comment
ba278c5 Fix checks for what types of columns can be optional
7de20ea USe more const refs to avoid copies
dbac77f Make a bunch of things const
1400450 Remove an unused function
06e0ff8 Share ExternalCommitHelpers between Realm instances for a single path
f79dec9 Allow more nullable property types when supported
0eb0bd1 Honor is_nullable when creating columns
ea5c475 Refactor schema initialization a bit
e4f29fe Move the interprocess notification functionality to the object store
b129ebe Shuffle stuff around and clean some things up
eeb2ddd Improve array KVO performance a bit
c3649fb Skip PK uniqueness checking when first creating a Realm file
0a41c85 Improve performance of realm_requires_update() and make more things const
efdfa08 Port some of the KVO support functionality to the object store
65e1eb5 Add the ability to bypass the Realm cache entirely
3f226cf Rework change notifications
045c7b2 Add Realm::get_schema_version()
e4377bb Change realm::Schema to a vector rather than a map
cae4cf2 Remove property.hpp include from object_schema.hpp
55e6cca Convert RLMRealmConfiguration to a wrapper around Realm::Config
563a837 Use NSDMIs for realm::Property
0ae1bb1 Don't cache dynamic realms in the ObjectStore cache either
25a6734 Eliminate some copies
45890f2 Use NSDMIs for Realm
348f4a7 Reduce s_init_mutex's scope
b4f856b Use NSDMIs for Realm::Config and make it moveable
a91839b Store a copy of the encryption key
0700428 Merge pull request #3 from realm/al-bugfixes
b084335 clear Realm cache between tests
cb8364c property copy schema from cached realms
8712c8b fixes for latest object store changes
453e4d8 Fix crash when adding a property to a model without updating the schema version.

git-subtree-dir: src/object-store
git-subtree-split: 7701ba173d
2015-11-13 17:34:33 -08:00
Ari Lazier c064a0f1ca lock should be global 2015-11-13 17:32:29 -08:00
Ari Lazier c40faba20f make rpc shutdown thread safe 2015-11-13 17:32:29 -08:00