motion-yapper 0.0.3 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (294) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.travis.yml +3 -1
  4. data/lib/yapper.rb +3 -3
  5. data/lib/yapper/db.rb +61 -4
  6. data/lib/yapper/document/persistence.rb +4 -0
  7. data/lib/yapper/document/selection.rb +13 -0
  8. data/lib/yapper/version.rb +1 -1
  9. data/motion-yapper.gemspec +1 -1
  10. data/spec/integration/search_spec.rb +111 -0
  11. data/vendor/Podfile.lock +11 -7
  12. data/vendor/YapDatabaseRubyMotion/YapDatabaseRubyMotion.bridgesupport +16 -2
  13. data/vendor/YapDatabaseRubyMotion/YapDatabaseRubyMotion.h +10 -7
  14. data/vendor/YapDatabaseRubyMotion/YapDatabaseRubyMotion.m +20 -2
  15. metadata +19 -297
  16. data/vendor/Pods/.build/libPods-CocoaLumberjack.a +0 -0
  17. data/vendor/Pods/.build/libPods-NSData+MD5Digest.a +0 -0
  18. data/vendor/Pods/.build/libPods-YapDatabase.a +0 -0
  19. data/vendor/Pods/.build/libPods.a +0 -0
  20. data/vendor/Pods/BuildHeaders/CocoaLumberjack/DDASLLogger.h +0 -41
  21. data/vendor/Pods/BuildHeaders/CocoaLumberjack/DDAbstractDatabaseLogger.h +0 -102
  22. data/vendor/Pods/BuildHeaders/CocoaLumberjack/DDContextFilterLogFormatter.h +0 -63
  23. data/vendor/Pods/BuildHeaders/CocoaLumberjack/DDDispatchQueueLogFormatter.h +0 -128
  24. data/vendor/Pods/BuildHeaders/CocoaLumberjack/DDFileLogger.h +0 -369
  25. data/vendor/Pods/BuildHeaders/CocoaLumberjack/DDLog+LOGV.h +0 -99
  26. data/vendor/Pods/BuildHeaders/CocoaLumberjack/DDLog.h +0 -634
  27. data/vendor/Pods/BuildHeaders/CocoaLumberjack/DDMultiFormatter.h +0 -30
  28. data/vendor/Pods/BuildHeaders/CocoaLumberjack/DDTTYLogger.h +0 -181
  29. data/vendor/Pods/BuildHeaders/NSData+MD5Digest/NSData+MD5Digest.h +0 -18
  30. data/vendor/Pods/BuildHeaders/YapDatabase/NSDictionary+YapDatabase.h +0 -8
  31. data/vendor/Pods/BuildHeaders/YapDatabase/YapCache.h +0 -91
  32. data/vendor/Pods/BuildHeaders/YapDatabase/YapCollectionKey.h +0 -23
  33. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabase.h +0 -547
  34. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseConnection.h +0 -449
  35. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseConnectionState.h +0 -29
  36. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseDefaults.h +0 -37
  37. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseExtension.h +0 -15
  38. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseExtensionConnection.h +0 -11
  39. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseExtensionPrivate.h +0 -444
  40. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseExtensionTransaction.h +0 -11
  41. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseFilteredView.h +0 -81
  42. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseFilteredViewConnection.h +0 -12
  43. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseFilteredViewPrivate.h +0 -17
  44. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseFilteredViewTransaction.h +0 -39
  45. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseFilteredViewTypes.h +0 -32
  46. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseFullTextSearch.h +0 -89
  47. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseFullTextSearchConnection.h +0 -32
  48. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseFullTextSearchPrivate.h +0 -77
  49. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseFullTextSearchSnippetOptions.h +0 -79
  50. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseFullTextSearchTransaction.h +0 -68
  51. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseLogging.h +0 -158
  52. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseManager.h +0 -17
  53. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabasePrivate.h +0 -446
  54. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseQuery.h +0 -42
  55. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseRelationship.h +0 -35
  56. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseRelationshipConnection.h +0 -29
  57. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseRelationshipEdge.h +0 -163
  58. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseRelationshipEdgePrivate.h +0 -79
  59. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseRelationshipNode.h +0 -99
  60. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseRelationshipOptions.h +0 -59
  61. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseRelationshipPrivate.h +0 -125
  62. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseRelationshipTransaction.h +0 -384
  63. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseSecondaryIndex.h +0 -149
  64. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseSecondaryIndexConnection.h +0 -33
  65. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseSecondaryIndexPrivate.h +0 -83
  66. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseSecondaryIndexSetup.h +0 -33
  67. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseSecondaryIndexSetupPrivate.h +0 -18
  68. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseSecondaryIndexTransaction.h +0 -58
  69. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseStatement.h +0 -13
  70. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseString.h +0 -121
  71. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseTransaction.h +0 -651
  72. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseView.h +0 -127
  73. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseViewChange.h +0 -272
  74. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseViewChangePrivate.h +0 -94
  75. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseViewConnection.h +0 -116
  76. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseViewMappings.h +0 -842
  77. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseViewMappingsPrivate.h +0 -72
  78. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseViewOptions.h +0 -63
  79. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseViewPage.h +0 -36
  80. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseViewPageMetadata.h +0 -27
  81. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseViewPrivate.h +0 -170
  82. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseViewRangeOptions.h +0 -330
  83. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseViewRangeOptionsPrivate.h +0 -17
  84. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseViewTransaction.h +0 -498
  85. data/vendor/Pods/BuildHeaders/YapDatabase/YapDatabaseViewTypes.h +0 -99
  86. data/vendor/Pods/BuildHeaders/YapDatabase/YapMemoryTable.h +0 -74
  87. data/vendor/Pods/BuildHeaders/YapDatabase/YapNull.h +0 -17
  88. data/vendor/Pods/BuildHeaders/YapDatabase/YapSet.h +0 -41
  89. data/vendor/Pods/BuildHeaders/YapDatabase/YapTouch.h +0 -15
  90. data/vendor/Pods/CocoaLumberjack/LICENSE.txt +0 -18
  91. data/vendor/Pods/CocoaLumberjack/Lumberjack/DDASLLogger.h +0 -41
  92. data/vendor/Pods/CocoaLumberjack/Lumberjack/DDASLLogger.m +0 -100
  93. data/vendor/Pods/CocoaLumberjack/Lumberjack/DDAbstractDatabaseLogger.h +0 -102
  94. data/vendor/Pods/CocoaLumberjack/Lumberjack/DDAbstractDatabaseLogger.m +0 -727
  95. data/vendor/Pods/CocoaLumberjack/Lumberjack/DDFileLogger.h +0 -369
  96. data/vendor/Pods/CocoaLumberjack/Lumberjack/DDFileLogger.m +0 -1539
  97. data/vendor/Pods/CocoaLumberjack/Lumberjack/DDLog+LOGV.h +0 -99
  98. data/vendor/Pods/CocoaLumberjack/Lumberjack/DDLog.h +0 -634
  99. data/vendor/Pods/CocoaLumberjack/Lumberjack/DDLog.m +0 -1208
  100. data/vendor/Pods/CocoaLumberjack/Lumberjack/DDTTYLogger.h +0 -181
  101. data/vendor/Pods/CocoaLumberjack/Lumberjack/DDTTYLogger.m +0 -1520
  102. data/vendor/Pods/CocoaLumberjack/Lumberjack/Extensions/DDContextFilterLogFormatter.h +0 -63
  103. data/vendor/Pods/CocoaLumberjack/Lumberjack/Extensions/DDContextFilterLogFormatter.m +0 -191
  104. data/vendor/Pods/CocoaLumberjack/Lumberjack/Extensions/DDDispatchQueueLogFormatter.h +0 -128
  105. data/vendor/Pods/CocoaLumberjack/Lumberjack/Extensions/DDDispatchQueueLogFormatter.m +0 -253
  106. data/vendor/Pods/CocoaLumberjack/Lumberjack/Extensions/DDMultiFormatter.h +0 -30
  107. data/vendor/Pods/CocoaLumberjack/Lumberjack/Extensions/DDMultiFormatter.m +0 -127
  108. data/vendor/Pods/CocoaLumberjack/Lumberjack/Extensions/README.txt +0 -7
  109. data/vendor/Pods/CocoaLumberjack/README.markdown +0 -74
  110. data/vendor/Pods/Headers/CocoaLumberjack/DDASLLogger.h +0 -41
  111. data/vendor/Pods/Headers/CocoaLumberjack/DDAbstractDatabaseLogger.h +0 -102
  112. data/vendor/Pods/Headers/CocoaLumberjack/DDContextFilterLogFormatter.h +0 -63
  113. data/vendor/Pods/Headers/CocoaLumberjack/DDDispatchQueueLogFormatter.h +0 -128
  114. data/vendor/Pods/Headers/CocoaLumberjack/DDFileLogger.h +0 -369
  115. data/vendor/Pods/Headers/CocoaLumberjack/DDLog+LOGV.h +0 -99
  116. data/vendor/Pods/Headers/CocoaLumberjack/DDLog.h +0 -634
  117. data/vendor/Pods/Headers/CocoaLumberjack/DDMultiFormatter.h +0 -30
  118. data/vendor/Pods/Headers/CocoaLumberjack/DDTTYLogger.h +0 -181
  119. data/vendor/Pods/Headers/NSData+MD5Digest/NSData+MD5Digest.h +0 -18
  120. data/vendor/Pods/Headers/YapDatabase/YapCollectionKey.h +0 -23
  121. data/vendor/Pods/Headers/YapDatabase/YapDatabase.h +0 -547
  122. data/vendor/Pods/Headers/YapDatabase/YapDatabaseConnection.h +0 -449
  123. data/vendor/Pods/Headers/YapDatabase/YapDatabaseExtension.h +0 -15
  124. data/vendor/Pods/Headers/YapDatabase/YapDatabaseExtensionConnection.h +0 -11
  125. data/vendor/Pods/Headers/YapDatabase/YapDatabaseExtensionTransaction.h +0 -11
  126. data/vendor/Pods/Headers/YapDatabase/YapDatabaseFilteredView.h +0 -81
  127. data/vendor/Pods/Headers/YapDatabase/YapDatabaseFilteredViewConnection.h +0 -12
  128. data/vendor/Pods/Headers/YapDatabase/YapDatabaseFilteredViewTransaction.h +0 -39
  129. data/vendor/Pods/Headers/YapDatabase/YapDatabaseFilteredViewTypes.h +0 -32
  130. data/vendor/Pods/Headers/YapDatabase/YapDatabaseFullTextSearch.h +0 -89
  131. data/vendor/Pods/Headers/YapDatabase/YapDatabaseFullTextSearchConnection.h +0 -32
  132. data/vendor/Pods/Headers/YapDatabase/YapDatabaseFullTextSearchSnippetOptions.h +0 -79
  133. data/vendor/Pods/Headers/YapDatabase/YapDatabaseFullTextSearchTransaction.h +0 -68
  134. data/vendor/Pods/Headers/YapDatabase/YapDatabaseQuery.h +0 -42
  135. data/vendor/Pods/Headers/YapDatabase/YapDatabaseRelationship.h +0 -35
  136. data/vendor/Pods/Headers/YapDatabase/YapDatabaseRelationshipConnection.h +0 -29
  137. data/vendor/Pods/Headers/YapDatabase/YapDatabaseRelationshipEdge.h +0 -163
  138. data/vendor/Pods/Headers/YapDatabase/YapDatabaseRelationshipNode.h +0 -99
  139. data/vendor/Pods/Headers/YapDatabase/YapDatabaseRelationshipOptions.h +0 -59
  140. data/vendor/Pods/Headers/YapDatabase/YapDatabaseRelationshipTransaction.h +0 -384
  141. data/vendor/Pods/Headers/YapDatabase/YapDatabaseSecondaryIndex.h +0 -149
  142. data/vendor/Pods/Headers/YapDatabase/YapDatabaseSecondaryIndexConnection.h +0 -33
  143. data/vendor/Pods/Headers/YapDatabase/YapDatabaseSecondaryIndexSetup.h +0 -33
  144. data/vendor/Pods/Headers/YapDatabase/YapDatabaseSecondaryIndexTransaction.h +0 -58
  145. data/vendor/Pods/Headers/YapDatabase/YapDatabaseTransaction.h +0 -651
  146. data/vendor/Pods/Headers/YapDatabase/YapDatabaseView.h +0 -127
  147. data/vendor/Pods/Headers/YapDatabase/YapDatabaseViewChange.h +0 -272
  148. data/vendor/Pods/Headers/YapDatabase/YapDatabaseViewConnection.h +0 -116
  149. data/vendor/Pods/Headers/YapDatabase/YapDatabaseViewMappings.h +0 -842
  150. data/vendor/Pods/Headers/YapDatabase/YapDatabaseViewOptions.h +0 -63
  151. data/vendor/Pods/Headers/YapDatabase/YapDatabaseViewRangeOptions.h +0 -330
  152. data/vendor/Pods/Headers/YapDatabase/YapDatabaseViewTransaction.h +0 -498
  153. data/vendor/Pods/Headers/YapDatabase/YapDatabaseViewTypes.h +0 -99
  154. data/vendor/Pods/Headers/YapDatabase/YapSet.h +0 -41
  155. data/vendor/Pods/Headers/____Pods-CocoaLumberjack-prefix.h +0 -7
  156. data/vendor/Pods/Headers/____Pods-NSData+MD5Digest-prefix.h +0 -5
  157. data/vendor/Pods/Headers/____Pods-YapDatabase-prefix.h +0 -5
  158. data/vendor/Pods/Headers/____Pods-environment.h +0 -38
  159. data/vendor/Pods/Manifest.lock +0 -22
  160. data/vendor/Pods/NSData+MD5Digest/NSData+MD5Digest/NSData+MD5Digest.h +0 -18
  161. data/vendor/Pods/NSData+MD5Digest/NSData+MD5Digest/NSData+MD5Digest.m +0 -39
  162. data/vendor/Pods/NSData+MD5Digest/README.md +0 -11
  163. data/vendor/Pods/Pods-CocoaLumberjack-Private.xcconfig +0 -5
  164. data/vendor/Pods/Pods-CocoaLumberjack-dummy.m +0 -5
  165. data/vendor/Pods/Pods-CocoaLumberjack-prefix.pch +0 -7
  166. data/vendor/Pods/Pods-CocoaLumberjack.xcconfig +0 -0
  167. data/vendor/Pods/Pods-NSData+MD5Digest-Private.xcconfig +0 -5
  168. data/vendor/Pods/Pods-NSData+MD5Digest-dummy.m +0 -5
  169. data/vendor/Pods/Pods-NSData+MD5Digest-prefix.pch +0 -5
  170. data/vendor/Pods/Pods-NSData+MD5Digest.xcconfig +0 -0
  171. data/vendor/Pods/Pods-YapDatabase-Private.xcconfig +0 -5
  172. data/vendor/Pods/Pods-YapDatabase-dummy.m +0 -5
  173. data/vendor/Pods/Pods-YapDatabase-prefix.pch +0 -5
  174. data/vendor/Pods/Pods-YapDatabase.xcconfig +0 -1
  175. data/vendor/Pods/Pods-acknowledgements.markdown +0 -59
  176. data/vendor/Pods/Pods-acknowledgements.plist +0 -97
  177. data/vendor/Pods/Pods-dummy.m +0 -5
  178. data/vendor/Pods/Pods-environment.h +0 -38
  179. data/vendor/Pods/Pods-resources.sh +0 -68
  180. data/vendor/Pods/Pods.xcconfig +0 -5
  181. data/vendor/Pods/Pods.xcodeproj/project.pbxproj +0 -4807
  182. data/vendor/Pods/Pods.xcodeproj/xcuserdata/kareemk.xcuserdatad/xcschemes/Pods-CocoaLumberjack.xcscheme +0 -59
  183. data/vendor/Pods/Pods.xcodeproj/xcuserdata/kareemk.xcuserdatad/xcschemes/Pods-NSData+MD5Digest.xcscheme +0 -59
  184. data/vendor/Pods/Pods.xcodeproj/xcuserdata/kareemk.xcuserdatad/xcschemes/Pods-YapDatabase.xcscheme +0 -59
  185. data/vendor/Pods/Pods.xcodeproj/xcuserdata/kareemk.xcuserdatad/xcschemes/Pods.xcscheme +0 -59
  186. data/vendor/Pods/Pods.xcodeproj/xcuserdata/kareemk.xcuserdatad/xcschemes/xcschememanagement.plist +0 -31
  187. data/vendor/Pods/YapDatabase/LICENSE.txt +0 -18
  188. data/vendor/Pods/YapDatabase/README.md +0 -32
  189. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FilteredViews/Internal/YapDatabaseFilteredViewPrivate.h +0 -17
  190. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FilteredViews/YapDatabaseFilteredView.h +0 -81
  191. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FilteredViews/YapDatabaseFilteredView.m +0 -159
  192. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FilteredViews/YapDatabaseFilteredViewConnection.h +0 -12
  193. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FilteredViews/YapDatabaseFilteredViewConnection.m +0 -41
  194. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FilteredViews/YapDatabaseFilteredViewTransaction.h +0 -39
  195. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FilteredViews/YapDatabaseFilteredViewTransaction.m +0 -1235
  196. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FilteredViews/YapDatabaseFilteredViewTypes.h +0 -32
  197. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FullTextSearch/Internal/YapDatabaseFullTextSearchPrivate.h +0 -77
  198. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FullTextSearch/YapDatabaseFullTextSearch.h +0 -89
  199. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FullTextSearch/YapDatabaseFullTextSearch.m +0 -146
  200. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FullTextSearch/YapDatabaseFullTextSearchConnection.h +0 -32
  201. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FullTextSearch/YapDatabaseFullTextSearchConnection.m +0 -298
  202. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FullTextSearch/YapDatabaseFullTextSearchSnippetOptions.h +0 -79
  203. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FullTextSearch/YapDatabaseFullTextSearchSnippetOptions.m +0 -95
  204. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FullTextSearch/YapDatabaseFullTextSearchTransaction.h +0 -68
  205. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/FullTextSearch/YapDatabaseFullTextSearchTransaction.m +0 -1403
  206. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Protocol/Internal/YapDatabaseExtensionPrivate.h +0 -444
  207. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Protocol/YapDatabaseExtension.h +0 -15
  208. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Protocol/YapDatabaseExtension.m +0 -83
  209. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Protocol/YapDatabaseExtensionConnection.h +0 -11
  210. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Protocol/YapDatabaseExtensionConnection.m +0 -46
  211. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Protocol/YapDatabaseExtensionTransaction.h +0 -11
  212. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Protocol/YapDatabaseExtensionTransaction.m +0 -204
  213. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Relationships/Internal/YapDatabaseRelationshipEdgePrivate.h +0 -79
  214. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Relationships/Internal/YapDatabaseRelationshipPrivate.h +0 -125
  215. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Relationships/YapDatabaseRelationship.h +0 -35
  216. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Relationships/YapDatabaseRelationship.m +0 -129
  217. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Relationships/YapDatabaseRelationshipConnection.h +0 -29
  218. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Relationships/YapDatabaseRelationshipConnection.m +0 -802
  219. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Relationships/YapDatabaseRelationshipEdge.h +0 -163
  220. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Relationships/YapDatabaseRelationshipEdge.m +0 -408
  221. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Relationships/YapDatabaseRelationshipNode.h +0 -99
  222. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Relationships/YapDatabaseRelationshipOptions.h +0 -59
  223. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Relationships/YapDatabaseRelationshipOptions.m +0 -29
  224. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Relationships/YapDatabaseRelationshipTransaction.h +0 -384
  225. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Relationships/YapDatabaseRelationshipTransaction.m +0 -5254
  226. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/SecondaryIndex/Internal/YapDatabaseSecondaryIndexPrivate.h +0 -83
  227. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/SecondaryIndex/Internal/YapDatabaseSecondaryIndexSetupPrivate.h +0 -18
  228. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/SecondaryIndex/YapDatabaseSecondaryIndex.h +0 -149
  229. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/SecondaryIndex/YapDatabaseSecondaryIndex.m +0 -161
  230. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/SecondaryIndex/YapDatabaseSecondaryIndexConnection.h +0 -33
  231. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/SecondaryIndex/YapDatabaseSecondaryIndexConnection.m +0 -331
  232. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/SecondaryIndex/YapDatabaseSecondaryIndexSetup.h +0 -33
  233. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/SecondaryIndex/YapDatabaseSecondaryIndexSetup.m +0 -245
  234. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/SecondaryIndex/YapDatabaseSecondaryIndexTransaction.h +0 -58
  235. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/SecondaryIndex/YapDatabaseSecondaryIndexTransaction.m +0 -1269
  236. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/Internal/YapDatabaseViewChangePrivate.h +0 -94
  237. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/Internal/YapDatabaseViewMappingsPrivate.h +0 -72
  238. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/Internal/YapDatabaseViewPage.h +0 -36
  239. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/Internal/YapDatabaseViewPage.mm +0 -296
  240. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/Internal/YapDatabaseViewPageMetadata.h +0 -27
  241. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/Internal/YapDatabaseViewPageMetadata.m +0 -28
  242. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/Internal/YapDatabaseViewPrivate.h +0 -170
  243. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/Internal/YapDatabaseViewRangeOptionsPrivate.h +0 -17
  244. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/Utilities/YapDatabaseViewChange.h +0 -272
  245. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/Utilities/YapDatabaseViewChange.m +0 -2500
  246. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/Utilities/YapDatabaseViewMappings.h +0 -842
  247. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/Utilities/YapDatabaseViewMappings.m +0 -1714
  248. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/Utilities/YapDatabaseViewRangeOptions.h +0 -330
  249. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/Utilities/YapDatabaseViewRangeOptions.m +0 -141
  250. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/YapDatabaseView.h +0 -127
  251. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/YapDatabaseView.m +0 -194
  252. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/YapDatabaseViewConnection.h +0 -116
  253. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/YapDatabaseViewConnection.m +0 -888
  254. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/YapDatabaseViewOptions.h +0 -63
  255. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/YapDatabaseViewOptions.m +0 -27
  256. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/YapDatabaseViewTransaction.h +0 -498
  257. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/YapDatabaseViewTransaction.m +0 -4986
  258. data/vendor/Pods/YapDatabase/YapDatabase/Extensions/Views/YapDatabaseViewTypes.h +0 -99
  259. data/vendor/Pods/YapDatabase/YapDatabase/Internal/NSDictionary+YapDatabase.h +0 -8
  260. data/vendor/Pods/YapDatabase/YapDatabase/Internal/NSDictionary+YapDatabase.m +0 -19
  261. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapCache.h +0 -91
  262. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapCache.m +0 -465
  263. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapDatabaseConnectionState.h +0 -29
  264. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapDatabaseConnectionState.m +0 -48
  265. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapDatabaseDefaults.h +0 -37
  266. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapDatabaseDefaults.m +0 -83
  267. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapDatabaseLogging.h +0 -158
  268. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapDatabaseLogging.m +0 -73
  269. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapDatabaseManager.h +0 -17
  270. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapDatabaseManager.m +0 -56
  271. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapDatabasePrivate.h +0 -446
  272. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapDatabaseStatement.h +0 -13
  273. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapDatabaseStatement.m +0 -26
  274. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapDatabaseString.h +0 -121
  275. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapMemoryTable.h +0 -74
  276. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapMemoryTable.m +0 -603
  277. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapNull.h +0 -17
  278. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapNull.m +0 -35
  279. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapTouch.h +0 -15
  280. data/vendor/Pods/YapDatabase/YapDatabase/Internal/YapTouch.m +0 -31
  281. data/vendor/Pods/YapDatabase/YapDatabase/Utilities/YapCollectionKey.h +0 -23
  282. data/vendor/Pods/YapDatabase/YapDatabase/Utilities/YapCollectionKey.m +0 -199
  283. data/vendor/Pods/YapDatabase/YapDatabase/Utilities/YapDatabaseQuery.h +0 -42
  284. data/vendor/Pods/YapDatabase/YapDatabase/Utilities/YapDatabaseQuery.m +0 -96
  285. data/vendor/Pods/YapDatabase/YapDatabase/Utilities/YapSet.h +0 -41
  286. data/vendor/Pods/YapDatabase/YapDatabase/Utilities/YapSet.m +0 -82
  287. data/vendor/Pods/YapDatabase/YapDatabase/YapDatabase.h +0 -547
  288. data/vendor/Pods/YapDatabase/YapDatabase/YapDatabase.m +0 -2013
  289. data/vendor/Pods/YapDatabase/YapDatabase/YapDatabaseConnection.h +0 -449
  290. data/vendor/Pods/YapDatabase/YapDatabase/YapDatabaseConnection.m +0 -4046
  291. data/vendor/Pods/YapDatabase/YapDatabase/YapDatabaseTransaction.h +0 -651
  292. data/vendor/Pods/YapDatabase/YapDatabase/YapDatabaseTransaction.m +0 -5602
  293. data/vendor/Pods/build-iPhoneSimulator/Pods.bridgesupport +0 -3172
  294. data/vendor/Pods/build-iPhoneSimulator/libPods.a +0 -0
@@ -1,149 +0,0 @@
1
- #import <Foundation/Foundation.h>
2
-
3
- #import "YapDatabaseExtension.h"
4
- #import "YapDatabaseSecondaryIndexSetup.h"
5
- #import "YapDatabaseSecondaryIndexConnection.h"
6
- #import "YapDatabaseSecondaryIndexTransaction.h"
7
-
8
- /**
9
- * Welcome to YapDatabase!
10
- *
11
- * https://github.com/yaptv/YapDatabase
12
- *
13
- * The project wiki has a wealth of documentation if you have any questions.
14
- * https://github.com/yaptv/YapDatabase/wiki
15
- *
16
- * YapDatabaseSecondaryIndex is an extension which allows you to add additional indexes.
17
- * That is, it allows you to create index(es) within sqlite for particular properties of your objects.
18
- * You can then issue queries to find or enumerate objects using the indexes. (e.g. age >= 62)
19
- * This allows for increased flexibility above the traditional key-value model.
20
- **/
21
-
22
- /**
23
- * The block handles extracting the column values for the secondary indexes.
24
- *
25
- * When you add or update rows in the databse the block is invoked.
26
- * Your block can inspect the row and determine if it contains any values that should be added to the secondary indexes.
27
- * If not, the block can simply return.
28
- * Otherwise the block should extract any values and add them to the given dictionary.
29
- *
30
- * After the block returns, the dictionary parameter will be inspected,
31
- * and any set values will be automatically inserted/updated within the sqlite indexes.
32
- *
33
- * You should choose a block type that takes the minimum number of required parameters.
34
- * The extension can make various optimizations based on required parameters of the block.
35
- * For example, if metadata isn't required, then the extension can ignore metadata-only updates.
36
- **/
37
- typedef id YapDatabaseSecondaryIndexBlock; // One of the YapDatabaseSecondaryIndexWith_X_Block types below.
38
-
39
- typedef void (^YapDatabaseSecondaryIndexWithKeyBlock) \
40
- (NSMutableDictionary *dict, NSString *collection, NSString *key);
41
- typedef void (^YapDatabaseSecondaryIndexWithObjectBlock) \
42
- (NSMutableDictionary *dict, NSString *collection, NSString *key, id object);
43
- typedef void (^YapDatabaseSecondaryIndexWithMetadataBlock) \
44
- (NSMutableDictionary *dict, NSString *collection, NSString *key, id metadata);
45
- typedef void (^YapDatabaseSecondaryIndexWithRowBlock) \
46
- (NSMutableDictionary *dict, NSString *collection, NSString *key, id object, id metadata);
47
-
48
- /**
49
- * Use this enum to specify what kind of block you're passing.
50
- **/
51
- typedef enum {
52
- YapDatabaseSecondaryIndexBlockTypeWithKey = 1031,
53
- YapDatabaseSecondaryIndexBlockTypeWithObject = 1032,
54
- YapDatabaseSecondaryIndexBlockTypeWithMetadata = 1033,
55
- YapDatabaseSecondaryIndexBlockTypeWithRow = 1034
56
- } YapDatabaseSecondaryIndexBlockType;
57
-
58
-
59
- @interface YapDatabaseSecondaryIndex : YapDatabaseExtension
60
-
61
- /* Inherited from YapDatabaseExtension
62
-
63
- @property (nonatomic, strong, readonly) NSString *registeredName;
64
-
65
- */
66
-
67
- /**
68
- * Creates a new secondary index extension.
69
- * After creation, you'll need to register the extension with the database system.
70
- *
71
- * @param setup
72
- *
73
- * A YapDatabaseSecondaryIndexSetup instance allows you to specify the column names and type.
74
- * The column names can be whatever you want, with a few exceptions for reserved names such as "rowid".
75
- * The types can reflect numbers or text.
76
- *
77
- * @param block
78
- *
79
- * Pass a block that is one of the following types:
80
- * - YapDatabaseSecondaryIndexWithKeyBlock
81
- * - YapDatabaseSecondaryIndexWithObjectBlock
82
- * - YapDatabaseSecondaryIndexWithMetadataBlock
83
- * - YapDatabaseSecondaryIndexWithRowBlock
84
- *
85
- * @param blockType
86
- *
87
- * Pass the blockType enum that matches the passed block:
88
- * - YapDatabaseSecondaryIndexBlockTypeWithKey
89
- * - YapDatabaseSecondaryIndexBlockTypeWithObject
90
- * - YapDatabaseSecondaryIndexBlockTypeWithMetadata
91
- * - YapDatabaseSecondaryIndexBlockTypeWithRow
92
- *
93
- * @see YapDatabaseSecondaryIndexSetup
94
- * @see YapDatabase registerExtension:withName:
95
- **/
96
- - (id)initWithSetup:(YapDatabaseSecondaryIndexSetup *)setup
97
- block:(YapDatabaseSecondaryIndexBlock)block
98
- blockType:(YapDatabaseSecondaryIndexBlockType)blockType;
99
-
100
- /**
101
- * Creates a new secondary index extension.
102
- * After creation, you'll need to register the extension with the database system.
103
- *
104
- * @param setup
105
- *
106
- * A YapDatabaseSecondaryIndexSetup instance allows you to specify the column names and type.
107
- * The column names can be whatever you want, with a few exceptions for reserved names such as "rowid".
108
- * The types can reflect numbers or text.
109
- *
110
- * @param block
111
- *
112
- * Pass a block that is one of the following types:
113
- * - YapDatabaseSecondaryIndexWithKeyBlock
114
- * - YapDatabaseSecondaryIndexWithObjectBlock
115
- * - YapDatabaseSecondaryIndexWithMetadataBlock
116
- * - YapDatabaseSecondaryIndexWithRowBlock
117
- *
118
- * @param blockType
119
- *
120
- * Pass the blockType enum that matches the passed block:
121
- * - YapDatabaseSecondaryIndexBlockTypeWithKey
122
- * - YapDatabaseSecondaryIndexBlockTypeWithObject
123
- * - YapDatabaseSecondaryIndexBlockTypeWithMetadata
124
- * - YapDatabaseSecondaryIndexBlockTypeWithRow
125
- *
126
- * @param version
127
- *
128
- * If, after creating the secondary index(es), you need to change the setup or block,
129
- * then simply increment the version parameter. If you pass a version that is different from the last
130
- * initialization of the extension, then it will automatically re-create itself.
131
- *
132
- * @see YapDatabaseSecondaryIndexSetup
133
- * @see YapDatabase registerExtension:withName:
134
- **/
135
- - (id)initWithSetup:(YapDatabaseSecondaryIndexSetup *)setup
136
- block:(YapDatabaseSecondaryIndexBlock)block
137
- blockType:(YapDatabaseSecondaryIndexBlockType)blockType
138
- version:(int)version;
139
-
140
- /**
141
- * The version assists in making changes to the extension.
142
- *
143
- * If you need to change the columnNames and/or block,
144
- * then simply pass an incremented version during the init method,
145
- * and the FTS extension will automatically update itself.
146
- **/
147
- @property (nonatomic, assign, readonly) int version;
148
-
149
- @end
@@ -1,33 +0,0 @@
1
- #import <Foundation/Foundation.h>
2
- #import "YapDatabaseExtensionConnection.h"
3
-
4
- @class YapDatabaseSecondaryIndex;
5
-
6
-
7
- @interface YapDatabaseSecondaryIndexConnection : YapDatabaseExtensionConnection
8
-
9
- /**
10
- * Returns the parent instance.
11
- **/
12
- @property (nonatomic, strong, readonly) YapDatabaseSecondaryIndex *secondaryIndex;
13
-
14
- /**
15
- * The queryCache speeds up the transaction methods. (enumerateXMatchingQuery:usingBlock:)
16
- *
17
- * In order for a query to be executed, it first has to be compiled by SQLite into an executable routine.
18
- * The queryCache stores these compiled reusable routines, so that repeated queries can be executed faster.
19
- *
20
- * Please note that, in terms of caching, only the queryString matters. The queryParameters do not.
21
- * That is, if you use the same queryString over and over, but with different parameters,
22
- * you will get a nice benefit from caching as it will be able to recyle the compiled routine,
23
- * and simply bind the different parameters each time.
24
- *
25
- * By default the queryCache is enabled and has a limit of 10.
26
- *
27
- * To disable the cache entirely, set queryCacheEnabled to NO.
28
- * To use an inifinite cache size, set the queryCacheLimit to ZERO.
29
- **/
30
- @property (atomic, assign, readwrite) BOOL queryCacheEnabled;
31
- @property (atomic, assign, readwrite) NSUInteger queryCacheLimit;
32
-
33
- @end
@@ -1,83 +0,0 @@
1
- #import "YapDatabase.h"
2
- #import "YapDatabaseConnection.h"
3
- #import "YapDatabaseTransaction.h"
4
-
5
- #import "YapDatabaseSecondaryIndex.h"
6
- #import "YapDatabaseSecondaryIndexConnection.h"
7
- #import "YapDatabaseSecondaryIndexTransaction.h"
8
-
9
- #import "YapDatabaseSecondaryIndexSetup.h"
10
- #import "YapDatabaseSecondaryIndexSetupPrivate.h"
11
-
12
- #import "YapCache.h"
13
-
14
- #import "sqlite3.h"
15
-
16
- /**
17
- * This version number is stored in the yap2 table.
18
- * If there is a major re-write to this class, then the version number will be incremented,
19
- * and the class can automatically rebuild the table as needed.
20
- **/
21
- #define YAP_DATABASE_SECONDARY_INDEX_CLASS_VERSION 1
22
-
23
-
24
- @interface YapDatabaseSecondaryIndex () {
25
- @public
26
-
27
- YapDatabaseSecondaryIndexSetup *setup;
28
-
29
- YapDatabaseSecondaryIndexBlock block;
30
- YapDatabaseSecondaryIndexBlockType blockType;
31
-
32
- int version;
33
-
34
- id columnNamesSharedKeySet;
35
- }
36
-
37
- - (NSString *)tableName;
38
-
39
- @end
40
-
41
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
42
- #pragma mark -
43
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
44
-
45
- @interface YapDatabaseSecondaryIndexConnection () {
46
- @public
47
-
48
- __strong YapDatabaseSecondaryIndex *secondaryIndex;
49
- __unsafe_unretained YapDatabaseConnection *databaseConnection;
50
-
51
- NSMutableDictionary *blockDict;
52
-
53
- YapCache *queryCache;
54
- NSUInteger queryCacheLimit;
55
- }
56
-
57
- - (id)initWithSecondaryIndex:(YapDatabaseSecondaryIndex *)secondaryIndex
58
- databaseConnection:(YapDatabaseConnection *)databaseConnection;
59
-
60
- - (sqlite3_stmt *)insertStatement;
61
- - (sqlite3_stmt *)updateStatement;
62
- - (sqlite3_stmt *)removeStatement;
63
- - (sqlite3_stmt *)removeAllStatement;
64
-
65
- @end
66
-
67
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
68
- #pragma mark -
69
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
70
-
71
- @interface YapDatabaseSecondaryIndexTransaction () {
72
- @private
73
-
74
- __unsafe_unretained YapDatabaseSecondaryIndexConnection *secondaryIndexConnection;
75
- __unsafe_unretained YapDatabaseReadTransaction *databaseTransaction;
76
-
77
- BOOL isMutated;
78
- }
79
-
80
- - (id)initWithSecondaryIndexConnection:(YapDatabaseSecondaryIndexConnection *)secondaryIndexConnection
81
- databaseTransaction:(YapDatabaseReadTransaction *)databaseTransaction;
82
-
83
- @end
@@ -1,33 +0,0 @@
1
- #import <Foundation/Foundation.h>
2
-
3
- @class YapDatabaseSecondaryIndexColumn;
4
-
5
- typedef enum {
6
- YapDatabaseSecondaryIndexTypeInteger,
7
- YapDatabaseSecondaryIndexTypeReal,
8
- YapDatabaseSecondaryIndexTypeText
9
- } YapDatabaseSecondaryIndexType;
10
-
11
-
12
- @interface YapDatabaseSecondaryIndexSetup : NSObject <NSCopying, NSFastEnumeration>
13
-
14
- - (id)init;
15
- - (id)initWithCapacity:(NSUInteger)capacity;
16
-
17
- - (void)addColumn:(NSString *)name withType:(YapDatabaseSecondaryIndexType)type;
18
-
19
- - (NSUInteger)count;
20
- - (YapDatabaseSecondaryIndexColumn *)columnAtIndex:(NSUInteger)index;
21
-
22
- - (NSArray *)columnNames;
23
-
24
- @end
25
-
26
- #pragma mark -
27
-
28
- @interface YapDatabaseSecondaryIndexColumn : NSObject
29
-
30
- @property (nonatomic, copy, readonly) NSString *name;
31
- @property (nonatomic, assign, readonly) YapDatabaseSecondaryIndexType type;
32
-
33
- @end
@@ -1,18 +0,0 @@
1
- #import <Foundation/Foundation.h>
2
- #import "YapDatabaseSecondaryIndexSetup.h"
3
-
4
-
5
- @interface YapDatabaseSecondaryIndexSetup ()
6
-
7
- /**
8
- * This method compares its setup to a current table structure.
9
- *
10
- * @param columns
11
- *
12
- * Dictionary of column names and affinity.
13
- *
14
- * @see YapDatabase columnNamesAndAffinityForTable:using:
15
- **/
16
- - (BOOL)matchesExistingColumnNamesAndAffinity:(NSDictionary *)columns;
17
-
18
- @end
@@ -1,58 +0,0 @@
1
- #import <Foundation/Foundation.h>
2
-
3
- #import "YapDatabaseExtensionTransaction.h"
4
- #import "YapDatabaseQuery.h"
5
-
6
-
7
- @interface YapDatabaseSecondaryIndexTransaction : YapDatabaseExtensionTransaction
8
-
9
- /**
10
- * These methods allow you to enumerates matches from the secondary index(es) using a given query.
11
- *
12
- * The query that you input is an SQL style query (appropriate for SQLite semantics),
13
- * excluding the "SELECT ... FROM 'tableName'" component.
14
- *
15
- * For example:
16
- *
17
- * query = [YapDatabaseQuery queryWithFormat:@"WHERE age >= 62"];
18
- * [[transaction ext:@"idx"] enumerateKeysMatchingQuery:query usingBlock:^(NSString *key, BOOL *stop) {
19
- *
20
- * // ...
21
- * }];
22
- *
23
- * You can also pass parameters to the query using the standard SQLite placeholder:
24
- *
25
- * query = [YapDatabaseQuery queryWithFormat:@"WHERE age >= ? AND state == ?", @(age), state];
26
- * [[transaction ext:@"idx"] enumerateKeysMatchingQuery:query usingBlock:^(NSString *key, BOOL *stop) {
27
- *
28
- * // ...
29
- * }];
30
- *
31
- * For more information, and more examples, please see YapDatabaseQuery.
32
- *
33
- * @return NO if there was a problem with the given query. YES otherwise.
34
- *
35
- * @see YapDatabaseQuery
36
- **/
37
-
38
- - (BOOL)enumerateKeysMatchingQuery:(YapDatabaseQuery *)query
39
- usingBlock:(void (^)(NSString *collection, NSString *key, BOOL *stop))block;
40
-
41
- - (BOOL)enumerateKeysAndMetadataMatchingQuery:(YapDatabaseQuery *)query
42
- usingBlock:
43
- (void (^)(NSString *collection, NSString *key, id metadata, BOOL *stop))block;
44
-
45
- - (BOOL)enumerateKeysAndObjectsMatchingQuery:(YapDatabaseQuery *)query
46
- usingBlock:
47
- (void (^)(NSString *collection, NSString *key, id object, BOOL *stop))block;
48
-
49
- - (BOOL)enumerateRowsMatchingQuery:(YapDatabaseQuery *)query
50
- usingBlock:
51
- (void (^)(NSString *collection, NSString *key, id object, id metadata, BOOL *stop))block;
52
- /**
53
- * Skips the enumeration process, and just gives you the count of matching rows.
54
- **/
55
-
56
- - (BOOL)getNumberOfRows:(NSUInteger *)count matchingQuery:(YapDatabaseQuery *)query;
57
-
58
- @end
@@ -1,13 +0,0 @@
1
- #import <Foundation/Foundation.h>
2
- #import "sqlite3.h"
3
-
4
- /**
5
- * Simple wrapper class to facilitate storing sqlite3_stmt items as objects (primarily in YapCache).
6
- **/
7
- @interface YapDatabaseStatement : NSObject
8
-
9
- - (id)initWithStatement:(sqlite3_stmt *)stmt;
10
-
11
- @property (nonatomic, assign, readonly) sqlite3_stmt *stmt;
12
-
13
- @end
@@ -1,121 +0,0 @@
1
- /**
2
- * There are a LOT of conversions from NSString to char array.
3
- * This happens in almost every method, where we bind text to prepared sqlite3 statements.
4
- *
5
- * It is inefficient to use [key UTF8String] for these situations.
6
- * The Apple documentation is very explicit concerning the UTF8String method:
7
- *
8
- * > The returned C string is automatically freed just as a returned object would be released;
9
- * > you should copy the C string if [you need] to store it outside of the
10
- * > autorelease context in which the C string is created.
11
- *
12
- * In other words, the UTF8String method does a malloc for character buffer, copies the characters,
13
- * and autoreleases the buffer (just like an autoreleased NSData instance).
14
- *
15
- * Thus we suffer a bunch of malloc's if we use UTF8String.
16
- *
17
- * Considering that almost all keys are likely to be relatively small,
18
- * a much faster technique is to use the stack instead of the heap (with obvious precautions, see below).
19
- *
20
- * Note: This technique ONLY applies to key names and collection names.
21
- * It does NOT apply to object/primitiveData or metadata. Those are binded to sqlite3 statements using binary blobs.
22
- **/
23
-
24
-
25
- /**
26
- * We must be cautious and conservative so as to avoid stack overflow.
27
- * This is possibe if really huge key names or collection names are used.
28
- *
29
- * The number below represents the largest amount of memory (in bytes) that will be allocated on the stack per string.
30
- **/
31
- #define YapDatabaseStringMaxStackLength (1024 * 4)
32
-
33
- /**
34
- * Struct designed to be allocated on the stack.
35
- * You then use the inline functions below to "setup" and "teardown" the struct.
36
- * For example:
37
- *
38
- * > YapDatabaseString myKeyChar;
39
- * > MakeYapDatabaseString(&myKeyChar, myNSStringKey);
40
- * > ...
41
- * > sqlite3_bind_text(statement, position, myKeyChar.str, myKeyChar.length, SQLITE_STATIC);
42
- * > ...
43
- * > sqlite3_clear_bindings(statement);
44
- * > sqlite3_reset(statement);
45
- * > FreeYapDatabaseString(&myKeyChar);
46
- *
47
- * There are 2 "public" fields:
48
- * str - Pointer to the char[] string.
49
- * length - Represents the length (in bytes) of the char[] str (excluding the NULL termination byte, as usual).
50
- *
51
- * The other 2 "private" fields are for internal use:
52
- * strStack - If the string doesn't exceed YapDatabaseStringMaxStackLength,
53
- * then the bytes are copied here (onto stack storage), and str actually points to strStack.
54
- * strHeap - If the string exceeds YapDatabaseStringMaxStackLength,
55
- * the space is allocated on the heap, strHeap holds the pointer, and str has the same pointer.
56
- *
57
- * Thus the "setup" and "teardown" methods below will automatically switch to heap storage (just like UTF8String),
58
- * if the key/collection name is too long, and performance will be equivalent.
59
- * But in the common case of short key/collection names, we can skip the more expensive heap allocation/deallocation.
60
- **/
61
- struct YapDatabaseString {
62
- int length;
63
- char strStack[YapDatabaseStringMaxStackLength];
64
- char *strHeap;
65
- char *str; // Pointer to either strStack or strHeap
66
- };
67
- typedef struct YapDatabaseString YapDatabaseString;
68
-
69
- /**
70
- * Initializes the YapDatabaseString structure.
71
- * It will automatically use heap storage if the given NSString is too long.
72
- *
73
- * This method should always be balanced with a call to FreeYapDatabaseString.
74
- **/
75
- NS_INLINE void MakeYapDatabaseString(YapDatabaseString *dbStr, NSString *nsStr)
76
- {
77
- if (nsStr)
78
- {
79
- // We convert to int because the sqlite3_bind_text() function expects an int parameter.
80
- // So we can change it to int here, or we can cast everywhere throughout the project.
81
-
82
- dbStr->length = (int)[nsStr lengthOfBytesUsingEncoding:NSUTF8StringEncoding];
83
-
84
- if ((dbStr->length + 1) <= YapDatabaseStringMaxStackLength)
85
- {
86
- dbStr->strHeap = NULL;
87
- dbStr->str = dbStr->strStack;
88
- }
89
- else
90
- {
91
- dbStr->strHeap = (char *)malloc((dbStr->length + 1));
92
- dbStr->str = dbStr->strHeap;
93
- }
94
-
95
- [nsStr getCString:dbStr->str maxLength:(dbStr->length + 1) encoding:NSUTF8StringEncoding];
96
- }
97
- else
98
- {
99
- dbStr->length = 0;
100
- dbStr->strHeap = NULL;
101
- dbStr->str = NULL;
102
- }
103
- }
104
-
105
- /**
106
- * If heap storage was needed (because the string length exceeded YapDatabaseStringMaxStackLength),
107
- * this method frees the heap allocated memory.
108
- *
109
- * In the common case of stack storage, strHeap will be NULL, and this method is essentially a no-op.
110
- *
111
- * This method should be invoked AFTER sqlite3_clear_bindings (assuming SQLITE_STATIC is used).
112
- **/
113
- NS_INLINE void FreeYapDatabaseString(YapDatabaseString *dbStr)
114
- {
115
- if (dbStr->strHeap)
116
- {
117
- free(dbStr->strHeap);
118
- dbStr->strHeap = NULL;
119
- dbStr->str = NULL;
120
- }
121
- }