I just merged the feature/query branch into master in the couchbase-lite-ios
repo. This means that if you build the master branch you'll have some cool new
features for your CBLQueries:
• Sorting by criteria other than the key order (using NSSortDescriptor)
• Filtering the result set (using NSPredicate)
• String or array prefix matching, to find things like "keys starting
with 'foo'" or "array keys whose first item is 2014".
• inclusiveEnd and inclusiveStart properties (which default to YES but
can be set to NO.)
There's a wiki page
<https://github.com/couchbase/couchbase-lite-ios/wiki/Query-Enhancements> that
describes these in more detail.
These features are planned for the cross-platform public API, but they haven't
been through API review yet, so the names might change slightly in the near
future. They'll be in the next iOS release (1.0.3?) and hopefully on the other
platforms too.
And if you're really into bleeding-edge stuff, there's an experimental class
called CBLQueryPlanner
<https://github.com/couchbase/couchbase-lite-ios/blob/master/Source/API/Extras/CBLQueryPlanner.h>
that provides a higher-level API for defining views and queries; it's somewhat
like Core Data's NSFetchRequest. You can see some examples in its unit tests
<https://github.com/couchbase/couchbase-lite-ios/blob/master/Source/API/Extras/CBLQueryPlannerTests.m#L98>.
This is not close to release, though; it's more of a technology demonstration
that we're still figuring out how to integrate with the view engine and public
API. If you want to try it out, you'll need to add the source file and header
to your app project and build them yourself.
—Jens
--
You received this message because you are subscribed to the Google Groups
"Couchbase Mobile" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/mobile-couchbase/CD094AC5-F1DD-4395-AA27-D4E3F1B391C5%40couchbase.com.
For more options, visit https://groups.google.com/d/optout.