nano-store 0.5.2 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. data/{CHANGELOG → CHANGELOG.md} +7 -0
  2. data/README.md +5 -1
  3. data/Rakefile +1 -1
  4. data/lib/nano_store.rb +1 -1
  5. data/lib/nano_store/finder.rb +10 -2
  6. data/lib/nano_store/model.rb +7 -7
  7. data/lib/nano_store/version.rb +1 -1
  8. data/spec/association_spec.rb +6 -6
  9. data/spec/finder_spec.rb +2 -0
  10. data/spec/model_spec.rb +33 -3
  11. data/spec/nano_store_spec.rb +5 -0
  12. data/spec/spec_helper.rb +14 -0
  13. data/vendor/Podfile.lock +3 -3
  14. data/vendor/Pods/BuildHeaders/NanoStore/NSFNanoBag.h +6 -1
  15. data/vendor/Pods/BuildHeaders/NanoStore/NSFNanoEngine.h +5 -0
  16. data/vendor/Pods/BuildHeaders/NanoStore/NSFNanoEngine_Private.h +2 -0
  17. data/vendor/Pods/BuildHeaders/NanoStore/NSFNanoExpression.h +6 -0
  18. data/vendor/Pods/BuildHeaders/NanoStore/NSFNanoExpression_Private.h +1 -1
  19. data/vendor/Pods/BuildHeaders/NanoStore/NSFNanoGlobals.h +5 -1
  20. data/vendor/Pods/BuildHeaders/NanoStore/NSFNanoGlobals_Private.h +6 -2
  21. data/vendor/Pods/BuildHeaders/NanoStore/NSFNanoObject.h +15 -3
  22. data/vendor/Pods/BuildHeaders/NanoStore/NSFNanoObject_Private.h +4 -0
  23. data/vendor/Pods/BuildHeaders/NanoStore/NSFNanoPredicate.h +6 -1
  24. data/vendor/Pods/BuildHeaders/NanoStore/NSFNanoResult.h +5 -0
  25. data/vendor/Pods/BuildHeaders/NanoStore/NSFNanoSearch.h +16 -2
  26. data/vendor/Pods/BuildHeaders/NanoStore/NSFNanoSortDescriptor.h +7 -1
  27. data/vendor/Pods/BuildHeaders/NanoStore/NSFNanoStore.h +12 -0
  28. data/vendor/Pods/BuildHeaders/NanoStore/NSFNanoStore_Private.h +3 -1
  29. data/vendor/Pods/BuildHeaders/NanoStore/NSFOrderedDictionary.h +33 -0
  30. data/vendor/Pods/BuildHeaders/NanoStore/NanoStore.h +36 -0
  31. data/vendor/Pods/Headers/NanoStore/NSFNanoBag.h +6 -1
  32. data/vendor/Pods/Headers/NanoStore/NSFNanoEngine.h +5 -0
  33. data/vendor/Pods/Headers/NanoStore/NSFNanoEngine_Private.h +2 -0
  34. data/vendor/Pods/Headers/NanoStore/NSFNanoExpression.h +6 -0
  35. data/vendor/Pods/Headers/NanoStore/NSFNanoExpression_Private.h +1 -1
  36. data/vendor/Pods/Headers/NanoStore/NSFNanoGlobals.h +5 -1
  37. data/vendor/Pods/Headers/NanoStore/NSFNanoGlobals_Private.h +6 -2
  38. data/vendor/Pods/Headers/NanoStore/NSFNanoObject.h +15 -3
  39. data/vendor/Pods/Headers/NanoStore/NSFNanoObject_Private.h +4 -0
  40. data/vendor/Pods/Headers/NanoStore/NSFNanoPredicate.h +6 -1
  41. data/vendor/Pods/Headers/NanoStore/NSFNanoResult.h +5 -0
  42. data/vendor/Pods/Headers/NanoStore/NSFNanoSearch.h +16 -2
  43. data/vendor/Pods/Headers/NanoStore/NSFNanoSortDescriptor.h +7 -1
  44. data/vendor/Pods/Headers/NanoStore/NSFNanoStore.h +12 -0
  45. data/vendor/Pods/Headers/NanoStore/NSFNanoStore_Private.h +3 -1
  46. data/vendor/Pods/Headers/NanoStore/NSFOrderedDictionary.h +33 -0
  47. data/vendor/Pods/Headers/NanoStore/NanoStore.h +36 -0
  48. data/vendor/Pods/NanoStore/Classes/Advanced/NSFNanoEngine.h +5 -0
  49. data/vendor/Pods/NanoStore/Classes/Advanced/NSFNanoEngine.m +142 -131
  50. data/vendor/Pods/NanoStore/Classes/Advanced/NSFNanoResult.h +5 -0
  51. data/vendor/Pods/NanoStore/Classes/Advanced/NSFNanoResult.m +148 -51
  52. data/vendor/Pods/NanoStore/Classes/Advanced/NSFOrderedDictionary.h +33 -0
  53. data/vendor/Pods/NanoStore/Classes/Advanced/NSFOrderedDictionary.m +148 -0
  54. data/vendor/Pods/NanoStore/Classes/Private/NSFNanoEngine_Private.h +2 -0
  55. data/vendor/Pods/NanoStore/Classes/Private/NSFNanoExpression_Private.h +1 -1
  56. data/vendor/Pods/NanoStore/Classes/Private/NSFNanoGlobals_Private.h +6 -2
  57. data/vendor/Pods/NanoStore/Classes/Private/NSFNanoObject_Private.h +4 -0
  58. data/vendor/Pods/NanoStore/Classes/Private/NSFNanoStore_Private.h +3 -1
  59. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoBag.h +6 -1
  60. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoBag.m +126 -117
  61. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoExpression.h +6 -0
  62. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoExpression.m +32 -18
  63. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoGlobals.h +5 -1
  64. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoGlobals.m +6 -3
  65. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoObject.h +15 -3
  66. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoObject.m +152 -31
  67. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoPredicate.h +6 -1
  68. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoPredicate.m +51 -26
  69. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoSearch.h +16 -2
  70. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoSearch.m +156 -115
  71. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoSortDescriptor.h +7 -1
  72. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoSortDescriptor.m +34 -17
  73. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoStore.h +12 -0
  74. data/vendor/Pods/NanoStore/Classes/Public/NSFNanoStore.m +210 -196
  75. data/vendor/Pods/NanoStore/Classes/Public/NanoStore.h +36 -0
  76. data/vendor/Pods/NanoStore/README.md +49 -0
  77. data/vendor/Pods/Pods.bridgesupport +798 -685
  78. metadata +30 -8
@@ -64,6 +64,13 @@
64
64
  - iOS library runs on the device and simulator
65
65
  - ARC compliant
66
66
 
67
+ @section latest_changes Latest changes
68
+ v2.5 - January 1, 2013
69
+
70
+ Starting with v2.5, the plist mechanism has been replaced with NSKeyedArchiver. There are several reasons for it: it's more compact, faster and uses less memory. Perhaps the most important reason is that it opens the possibility to store other data types.
71
+
72
+ NSNull is now supported. Big thanks to Wanny (https://github.com/mrwanny) for taking the time to improve this section of NanoStore.
73
+
67
74
  @section installation_sec Installation
68
75
 
69
76
  Building NanoStore is very easy. Just follow these steps:
@@ -423,6 +430,35 @@
423
430
  [sortByLastName release];
424
431
  @endcode
425
432
 
433
+ @section paging_limit_sec Paging using Limit and Offset
434
+ SQLite provides a really cool feature called OFFSET that is usually used with a LIMIT clause.
435
+
436
+ The LIMIT clause is used to limit the number of results returned in a SQL statement. So if you have 1000 rows in table, but only want to return the first 10, you would do something like this:
437
+ @code
438
+ SELECT column FROM table LIMIT 10
439
+ @endcode
440
+ Now suppose you wanted to show results 11-20. With the OFFSET keyword it's just as easy. The following query will do:
441
+ @code
442
+ SELECT column FROM table LIMIT 10 OFFSET 10
443
+ @endcode
444
+ Using pagination is also quite easy with NanoStore. This example based on one of the unit tests provided with the NanoStore distro:
445
+ @code
446
+ NSFNanoStore *nanoStore = [NSFNanoStore createAndOpenStoreWithType:NSFMemoryStoreType path:nil error:nil];
447
+
448
+ // Assume we have added objects to the store
449
+
450
+ NSFNanoSearch *search = [NSFNanoSearch searchWithStore:nanoStore];
451
+ search.value = @"Barcelona";
452
+ search.match = NSFEqualTo;
453
+ search.limit = 5;
454
+ search.offset = 3;
455
+
456
+ NSDictionary *searchResults = [search searchObjectsWithReturnType:NSFReturnObjects error:nil];
457
+
458
+ // Assuming the query matches some results, NanoStore should have retrieved
459
+ // the first 5 records right after the 3rd one from the result set.
460
+ @endcode
461
+
426
462
  @section performancetips_sec Performance Tips
427
463
 
428
464
  NanoStore by defaults saves every object to disk one by one. To speed up inserts and edited objects, increase NSFNanoStore's \link NSFNanoStore::saveInterval saveInterval \endlink property.
@@ -1,4 +1,5 @@
1
1
  # Welcome To NanoStore
2
+ -
2
3
 
3
4
  **What is NanoStore?**
4
5
 
@@ -22,7 +23,16 @@ Relational databases tend to have a rich understanding of the structure of your
22
23
  * iOS library runs on the device and simulator
23
24
  * ARC compliant
24
25
 
26
+ # Latest changes
27
+ -
28
+ v2.5 - January 1, 2013
29
+
30
+ * Starting with v2.5, the plist mechanism has been replaced with NSKeyedArchiver. There are several reasons for it: it's more compact, faster and uses less memory. Perhaps the most important reason is that it opens the possibility to store other data types.
31
+
32
+ * NSNull is now supported. Big thanks to Wanny (https://github.com/mrwanny) for taking the time to improve this section of NanoStore.
33
+
25
34
  # Installation
35
+ -
26
36
 
27
37
  Building NanoStore is very easy. Just follow these steps:
28
38
 
@@ -64,6 +74,7 @@ Usage example:
64
74
  4) Click "+" and add NanoStore
65
75
 
66
76
  # How does NanoStore work?
77
+ -
67
78
 
68
79
  The basic unit of data in NanoStore is called NanoObject. A NanoObject is any object which conforms to the `NSFNanoObjectProtocol` protocol.
69
80
 
@@ -104,6 +115,7 @@ Regardless of the route you decide to take, NanoStore will be able to store and
104
115
  App A retrieves the updated object as a Car object, in exactly the same format as it was originally stored.
105
116
 
106
117
  # Types of Document Stores
118
+ -
107
119
 
108
120
  There are three types of document stores available in NanoStore: in-memory, temporary and file-based. These document stores are defined by the `NSFNanoStoreType` type:
109
121
 
@@ -167,6 +179,7 @@ There are three types of document stores available in NanoStore: in-memory, temp
167
179
  Check the section Performance Tips below for important information about how to get the most out of NanoStore.
168
180
 
169
181
  # Working with a NanoObject
182
+ -
170
183
 
171
184
  There are three basic operations that NanoStore can perform with a NanoObject:
172
185
 
@@ -248,6 +261,7 @@ To remove an object, there are several options available. The most common method
248
261
  [nanoStore removeObjectsWithKeysInArray:[NSArray arrayWithObject:[object nanoObjectKey]] error:nil];
249
262
 
250
263
  # It's not a flat World
264
+ -
251
265
 
252
266
  Most database solutions force the developer to think in a two-dimensional space (rows and columns), forcing the developer to plan the schema ahead of time. This situation is not ideal because in most cases schema refinements could be required, oftentimes impacting the code as well.
253
267
 
@@ -258,6 +272,7 @@ By default, NanoStore allows objects to be stored without any sense of relations
258
272
  The `NSFNanoBag` API is rich, allowing the developer to add, remove, reload and undo its changes, deflate it (thus saving memory) and inflate it whenever it's required. In addition, it provides methods to obtain all bags, specific bags matching some keys, and bags containing a specific object (see `NSFNanoStore` for more information).
259
273
 
260
274
  # Where are my objects?
275
+ -
261
276
 
262
277
  While `NSFNanoStore` provides some convenience methods to obtain standard objects such as bags, the bulk of the search mechanism is handled by `NSFNanoSearch`. The steps involved to perform a search are quite simple:
263
278
 
@@ -314,6 +329,7 @@ Another cool feature is the possibility to invoke aggregated functions (count, a
314
329
  float averageSalary = [[search aggregateOperation:NSFAverage onAttribute:@"Salary"]floatValue];
315
330
 
316
331
  # Sorting
332
+ -
317
333
 
318
334
  Combining search and sort is an extremely easy operation. There are two simple parts:
319
335
 
@@ -369,7 +385,38 @@ If we wanted to retrieve all the existing people with <i>firstName</i> equal to
369
385
  // Cleanup
370
386
  [sortByLastName release];
371
387
 
388
+ # Paging using Limit and Offset
389
+ -
390
+
391
+ SQLite provides a really cool feature called OFFSET that is usually used with a LIMIT clause.
392
+
393
+ The LIMIT clause is used to limit the number of results returned in a SQL statement. So if you have 1000 rows in a table, but only want to return the first 10, you would do something like this:
394
+
395
+ SELECT column FROM table LIMIT 10
396
+
397
+ Now suppose you wanted to show results 11-20. With the OFFSET keyword it's just as easy. The following query will do:
398
+
399
+ SELECT column FROM table LIMIT 10 OFFSET 10
400
+
401
+ Using pagination is also quite easy with NanoStore. This example based on one of the unit tests provided with the NanoStore distro:
402
+
403
+ NSFNanoStore *nanoStore = [NSFNanoStore createAndOpenStoreWithType:NSFMemoryStoreType path:nil error:nil];
404
+
405
+ // Assume we have added objects to the store
406
+
407
+ NSFNanoSearch *search = [NSFNanoSearch searchWithStore:nanoStore];
408
+ search.value = @"Barcelona";
409
+ search.match = NSFEqualTo;
410
+ search.limit = 5;
411
+ search.offset = 3;
412
+
413
+ NSDictionary *searchResults = [search searchObjectsWithReturnType:NSFReturnObjects error:nil];
414
+
415
+ // Assuming the query matches some results, NanoStore should have retrieved
416
+ // the first 5 records right after the 3rd one from the result set.
417
+
372
418
  # Performance Tips
419
+ -
373
420
 
374
421
  NanoStore by defaults saves every object to disk one by one. To speed up inserts and edited objects, increase NSFNanoStore's `saveInterval` property.
375
422
 
@@ -401,6 +448,7 @@ NanoStore by defaults saves every object to disk one by one. To speed up inserts
401
448
  time reading the journal file and writing the changes to the store.
402
449
 
403
450
  # Need more help?
451
+ -
404
452
 
405
453
  There are two quick ways to find answers: reading the documentation and browsing the Unit tests.
406
454
 
@@ -411,5 +459,6 @@ While several attempts have been made to make the documentation easy to read and
411
459
  * Twitter: http://twitter.com/nanostoredev
412
460
 
413
461
  # Official Source Repository
462
+ -
414
463
 
415
464
  The official repository for NanoStore is hosted on GitHub: https://github.com/tciuro/NanoStore
@@ -1,1236 +1,1349 @@
1
1
  <?xml version='1.0'?>
2
2
  <signatures version='1.0'>
3
- <constant declared_type='NSString*' type='@' const='true' name='NSFAttribute'/>
4
- <constant declared_type='NSString*' type='@' const='true' name='NSFCalendarDate'/>
5
- <constant declared_type='NSString*' type='@' const='true' name='NSFDatatype'/>
6
- <constant declared_type='NSString*' type='@' const='true' name='NSFDomainKey'/>
7
- <constant declared_type='NSString*' type='@' const='true' name='NSFKey'/>
8
- <constant declared_type='NSString*' type='@' const='true' name='NSFKeys'/>
9
- <constant declared_type='NSString*' type='@' const='true' name='NSFMemoryDatabase'/>
10
- <constant declared_type='NSString*' type='@' const='true' name='NSFNanoObjectBehaviorException'/>
11
- <constant declared_type='NSInteger' type='i' const='true' name='NSFNanoStoreErrorKey'/>
12
- <constant declared_type='NSString*' type='@' const='true' name='NSFNanoStoreUnableToManipulateStoreException'/>
13
- <constant declared_type='NSString*' type='@' const='true' name='NSFNonConformingNanoObjectProtocolException'/>
14
- <constant declared_type='NSString*' type='@' const='true' name='NSFObjectClass'/>
15
- <constant declared_type='NSString*' type='@' const='true' name='NSFP_ColumnIdentifier'/>
16
- <constant declared_type='NSString*' type='@' const='true' name='NSFP_DatatypeIdentifier'/>
17
- <constant declared_type='NSString*' type='@' const='true' name='NSFP_FullDatatypeIdentifier'/>
18
- <constant declared_type='NSString*' type='@' const='true' name='NSFP_SchemaTable'/>
19
- <constant declared_type='NSString*' type='@' const='true' name='NSFP_TableIdentifier'/>
20
- <constant declared_type='NSString*' type='@' const='true' name='NSFPlist'/>
21
- <constant declared_type='NSString*' type='@' const='true' name='NSFRowIDColumnName'/>
22
- <constant declared_type='NSString*' type='@' const='true' name='NSFTemporaryDatabase'/>
23
- <constant declared_type='NSString*' type='@' const='true' name='NSFUnexpectedParameterException'/>
24
- <constant declared_type='NSString*' type='@' const='true' name='NSFValue'/>
25
- <constant declared_type='NSString*' type='@' const='true' name='NSFValues'/>
26
- <constant declared_type='NSString*' type='@' const='true' name='NSFVersionKey'/>
27
- <constant declared_type='NSInteger' type='i' const='true' name='NSF_Private_InvalidParameterDataCodeKey'/>
28
- <constant declared_type='NSInteger' type='i' const='true' name='NSF_Private_MacOSXErrorCodeKey'/>
29
- <constant declared_type='NSString*' type='@' const='true' name='NSF_Private_NSFKeys_NSFKey'/>
30
- <constant declared_type='NSString*' type='@' const='true' name='NSF_Private_NSFKeys_NSFPlist'/>
31
- <constant declared_type='NSString*' type='@' const='true' name='NSF_Private_NSFNanoBag_NSFKey'/>
32
- <constant declared_type='NSString*' type='@' const='true' name='NSF_Private_NSFNanoBag_NSFObjectKeys'/>
33
- <constant declared_type='NSString*' type='@' const='true' name='NSF_Private_NSFNanoBag_Name'/>
34
- <constant declared_type='NSString*' type='@' const='true' name='NSF_Private_NSFValues_NSFAttribute'/>
35
- <constant declared_type='NSString*' type='@' const='true' name='NSF_Private_NSFValues_NSFKey'/>
36
- <constant declared_type='NSString*' type='@' const='true' name='NSF_Private_NSFValues_NSFValue'/>
37
- <constant declared_type='NSString*' type='@' const='true' name='NSF_Private_ToDeleteTableKey'/>
38
- <enum value='1' name='CacheAllData'/>
39
- <enum value='2' name='CacheDataOnDemand'/>
40
- <enum value='3' name='DoNotCacheData'/>
41
- <enum value='0' name='JournalModeDelete'/>
42
- <enum value='3' name='JournalModeMemory'/>
43
- <enum value='5' name='JournalModeOFF'/>
44
- <enum value='2' name='JournalModePersist'/>
45
- <enum value='1' name='JournalModeTruncate'/>
46
- <enum value='4' name='JournalModeWAL'/>
47
- <enum value='3' name='NSFAfterDate'/>
48
- <enum value='1' name='NSFAnd'/>
49
- <enum value='2' name='NSFAttributeColumn'/>
50
- <enum value='1' name='NSFAverage'/>
51
- <enum value='1' name='NSFBeforeDate'/>
52
- <enum value='1' name='NSFBeginsWith'/>
53
- <enum value='2' name='NSFContains'/>
54
- <enum value='2' name='NSFCount'/>
55
- <enum value='2' name='NSFEncodingUTF16'/>
56
- <enum value='1' name='NSFEncodingUTF8'/>
57
- <enum value='3' name='NSFEncodingUnknown'/>
58
- <enum value='3' name='NSFEndsWith'/>
59
- <enum value='1' name='NSFEngineProcessingDefaultMode'/>
60
- <enum value='2' name='NSFEngineProcessingFastMode'/>
61
- <enum value='0' name='NSFEqualTo'/>
62
- <enum value='8' name='NSFGreaterThan'/>
63
- <enum value='5' name='NSFInsensitiveBeginsWith'/>
64
- <enum value='6' name='NSFInsensitiveContains'/>
65
- <enum value='7' name='NSFInsensitiveEndsWith'/>
66
- <enum value='4' name='NSFInsensitiveEqualTo'/>
67
- <enum value='1' name='NSFKeyColumn'/>
68
- <enum value='9' name='NSFLessThan'/>
69
- <enum value='3' name='NSFMax'/>
70
- <enum value='1' name='NSFMemoryStoreType'/>
71
- <enum value='4' name='NSFMin'/>
72
- <enum value='1' name='NSFNanoTypeData'/>
73
- <enum value='3' name='NSFNanoTypeDate'/>
74
- <enum value='4' name='NSFNanoTypeNumber'/>
75
- <enum value='0' name='NSFNanoTypeRowUID'/>
76
- <enum value='2' name='NSFNanoTypeString'/>
77
- <enum value='-1' name='NSFNanoTypeUnknown'/>
78
- <enum value='2' name='NSFOnDate'/>
79
- <enum value='2' name='NSFOr'/>
80
- <enum value='3' name='NSFPersistentStoreType'/>
81
- <enum value='2' name='NSFReturnKeys'/>
82
- <enum value='1' name='NSFReturnObjects'/>
83
- <enum value='2' name='NSFTemporaryStoreType'/>
84
- <enum value='5' name='NSFTotal'/>
85
- <enum value='3' name='NSFValueColumn'/>
86
- <enum value='2' name='SynchronousModeFull'/>
87
- <enum value='1' name='SynchronousModeNormal'/>
88
- <enum value='0' name='SynchronousModeOff'/>
89
- <enum value='0' name='TempStoreModeDefault'/>
90
- <enum value='1' name='TempStoreModeFile'/>
91
- <enum value='2' name='TempStoreModeMemory'/>
3
+ <constant type='@' declared_type='NSString*' name='NSFAttribute' const='true'/>
4
+ <constant type='@' declared_type='NSString*' name='NSFCalendarDate' const='true'/>
5
+ <constant type='@' declared_type='NSString*' name='NSFDatatype' const='true'/>
6
+ <constant type='@' declared_type='NSString*' name='NSFDomainKey' const='true'/>
7
+ <constant type='@' declared_type='NSString*' name='NSFKey' const='true'/>
8
+ <constant type='@' declared_type='NSString*' name='NSFKeyedArchive' const='true'/>
9
+ <constant type='@' declared_type='NSString*' name='NSFKeys' const='true'/>
10
+ <constant type='@' declared_type='NSString*' name='NSFMemoryDatabase' const='true'/>
11
+ <constant type='@' declared_type='NSString*' name='NSFNanoObjectBehaviorException' const='true'/>
12
+ <constant type='i' declared_type='NSInteger' name='NSFNanoStoreErrorKey' const='true'/>
13
+ <constant type='@' declared_type='NSString*' name='NSFNanoStoreUnableToManipulateStoreException' const='true'/>
14
+ <constant type='@' declared_type='NSString*' name='NSFNonConformingNanoObjectProtocolException' const='true'/>
15
+ <constant type='@' declared_type='NSString*' name='NSFObjectClass' const='true'/>
16
+ <constant type='@' declared_type='NSString*' name='NSFP_ColumnIdentifier' const='true'/>
17
+ <constant type='@' declared_type='NSString*' name='NSFP_DatatypeIdentifier' const='true'/>
18
+ <constant type='@' declared_type='NSString*' name='NSFP_FullDatatypeIdentifier' const='true'/>
19
+ <constant type='@' declared_type='NSString*' name='NSFP_SchemaTable' const='true'/>
20
+ <constant type='@' declared_type='NSString*' name='NSFP_TableIdentifier' const='true'/>
21
+ <constant type='@' declared_type='NSString*' name='NSFRowIDColumnName' const='true'/>
22
+ <constant type='@' declared_type='NSString*' name='NSFTemporaryDatabase' const='true'/>
23
+ <constant type='@' declared_type='NSString*' name='NSFUnexpectedParameterException' const='true'/>
24
+ <constant type='@' declared_type='NSString*' name='NSFValue' const='true'/>
25
+ <constant type='@' declared_type='NSString*' name='NSFValues' const='true'/>
26
+ <constant type='@' declared_type='NSString*' name='NSFVersionKey' const='true'/>
27
+ <constant type='i' declared_type='NSInteger' name='NSF_Private_InvalidParameterDataCodeKey' const='true'/>
28
+ <constant type='i' declared_type='NSInteger' name='NSF_Private_MacOSXErrorCodeKey' const='true'/>
29
+ <constant type='@' declared_type='NSString*' name='NSF_Private_NSFKeys_NSFKey' const='true'/>
30
+ <constant type='@' declared_type='NSString*' name='NSF_Private_NSFKeys_NSFKeyedArchive' const='true'/>
31
+ <constant type='@' declared_type='NSString*' name='NSF_Private_NSFNanoBag_NSFKey' const='true'/>
32
+ <constant type='@' declared_type='NSString*' name='NSF_Private_NSFNanoBag_NSFObjectKeys' const='true'/>
33
+ <constant type='@' declared_type='NSString*' name='NSF_Private_NSFNanoBag_Name' const='true'/>
34
+ <constant type='@' declared_type='NSString*' name='NSF_Private_NSFValues_NSFAttribute' const='true'/>
35
+ <constant type='@' declared_type='NSString*' name='NSF_Private_NSFValues_NSFKey' const='true'/>
36
+ <constant type='@' declared_type='NSString*' name='NSF_Private_NSFValues_NSFValue' const='true'/>
37
+ <constant type='@' declared_type='NSString*' name='NSF_Private_ToDeleteTableKey' const='true'/>
38
+ <enum name='CacheAllData' value='1'/>
39
+ <enum name='CacheDataOnDemand' value='2'/>
40
+ <enum name='DoNotCacheData' value='3'/>
41
+ <enum name='JournalModeDelete' value='0'/>
42
+ <enum name='JournalModeMemory' value='3'/>
43
+ <enum name='JournalModeOFF' value='5'/>
44
+ <enum name='JournalModePersist' value='2'/>
45
+ <enum name='JournalModeTruncate' value='1'/>
46
+ <enum name='JournalModeWAL' value='4'/>
47
+ <enum name='NSFAfterDate' value='3'/>
48
+ <enum name='NSFAnd' value='1'/>
49
+ <enum name='NSFAttributeColumn' value='2'/>
50
+ <enum name='NSFAverage' value='1'/>
51
+ <enum name='NSFBeforeDate' value='1'/>
52
+ <enum name='NSFBeginsWith' value='1'/>
53
+ <enum name='NSFContains' value='2'/>
54
+ <enum name='NSFCount' value='2'/>
55
+ <enum name='NSFEncodingUTF16' value='2'/>
56
+ <enum name='NSFEncodingUTF8' value='1'/>
57
+ <enum name='NSFEncodingUnknown' value='3'/>
58
+ <enum name='NSFEndsWith' value='3'/>
59
+ <enum name='NSFEngineProcessingDefaultMode' value='1'/>
60
+ <enum name='NSFEngineProcessingFastMode' value='2'/>
61
+ <enum name='NSFEqualTo' value='0'/>
62
+ <enum name='NSFGreaterThan' value='8'/>
63
+ <enum name='NSFInsensitiveBeginsWith' value='5'/>
64
+ <enum name='NSFInsensitiveContains' value='6'/>
65
+ <enum name='NSFInsensitiveEndsWith' value='7'/>
66
+ <enum name='NSFInsensitiveEqualTo' value='4'/>
67
+ <enum name='NSFKeyColumn' value='1'/>
68
+ <enum name='NSFLessThan' value='9'/>
69
+ <enum name='NSFMax' value='3'/>
70
+ <enum name='NSFMemoryStoreType' value='1'/>
71
+ <enum name='NSFMin' value='4'/>
72
+ <enum name='NSFNanoTypeData' value='1'/>
73
+ <enum name='NSFNanoTypeDate' value='3'/>
74
+ <enum name='NSFNanoTypeNULL' value='5'/>
75
+ <enum name='NSFNanoTypeNumber' value='4'/>
76
+ <enum name='NSFNanoTypeRowUID' value='0'/>
77
+ <enum name='NSFNanoTypeString' value='2'/>
78
+ <enum name='NSFNanoTypeURL' value='6'/>
79
+ <enum name='NSFNanoTypeUnknown' value='-1'/>
80
+ <enum name='NSFOnDate' value='2'/>
81
+ <enum name='NSFOr' value='2'/>
82
+ <enum name='NSFPersistentStoreType' value='3'/>
83
+ <enum name='NSFReturnKeys' value='2'/>
84
+ <enum name='NSFReturnObjects' value='1'/>
85
+ <enum name='NSFTemporaryStoreType' value='2'/>
86
+ <enum name='NSFTotal' value='5'/>
87
+ <enum name='NSFValueColumn' value='3'/>
88
+ <enum name='SynchronousModeFull' value='2'/>
89
+ <enum name='SynchronousModeNormal' value='1'/>
90
+ <enum name='SynchronousModeOff' value='0'/>
91
+ <enum name='TempStoreModeDefault' value='0'/>
92
+ <enum name='TempStoreModeFile' value='1'/>
93
+ <enum name='TempStoreModeMemory' value='2'/>
92
94
  <function name='NSFIsDebugOn'>
93
- <retval declared_type='BOOL' type='B'/>
95
+ <retval type='B' declared_type='BOOL'/>
94
96
  </function>
95
97
  <function name='NSFNanoDatatypeFromString'>
96
- <arg declared_type='NSString*' type='@' name='aNanoDatatype'/>
97
- <retval declared_type='NSFNanoDatatype' type='i'/>
98
+ <arg type='@' declared_type='NSString*' name='aNanoDatatype'/>
99
+ <retval type='i' declared_type='NSFNanoDatatype'/>
98
100
  </function>
99
101
  <function name='NSFSetIsDebugOn'>
100
- <arg declared_type='BOOL' type='B' name='flag'/>
101
- <retval declared_type='void' type='v'/>
102
+ <arg type='B' declared_type='BOOL' name='flag'/>
103
+ <retval type='v' declared_type='void'/>
102
104
  </function>
103
105
  <function name='NSFStringFromMatchType'>
104
- <arg declared_type='NSFMatchType' type='i' name='aMatchType'/>
105
- <retval declared_type='NSString*' type='@'/>
106
+ <arg type='i' declared_type='NSFMatchType' name='aMatchType'/>
107
+ <retval type='@' declared_type='NSString*'/>
106
108
  </function>
107
109
  <function name='NSFStringFromNanoDataType'>
108
- <arg declared_type='NSFNanoDatatype' type='i' name='aNanoDatatype'/>
109
- <retval declared_type='NSString*' type='@'/>
110
+ <arg type='i' declared_type='NSFNanoDatatype' name='aNanoDatatype'/>
111
+ <retval type='@' declared_type='NSString*'/>
112
+ </function>
113
+ <function name='safeJSONArrayFromArray'>
114
+ <arg type='@' declared_type='NSArray*' name='array'/>
115
+ <retval type='@' declared_type='NSArray*'/>
116
+ </function>
117
+ <function name='safeJSONDictionaryFromDictionary'>
118
+ <arg type='@' declared_type='NSDictionary*' name='dictionary'/>
119
+ <retval type='@' declared_type='NSDictionary*'/>
120
+ </function>
121
+ <function name='safeJSONObjectFromObject'>
122
+ <arg type='@' declared_type='id' name='object'/>
123
+ <retval type='@' declared_type='id'/>
110
124
  </function>
111
125
  <class name='NSFNanoBag'>
126
+ <method selector='JSONDescription'>
127
+ <retval type='@' declared_type='NSString*'/>
128
+ </method>
112
129
  <method selector='_inflateObjectsWithKeys:'>
113
- <arg declared_type='NSArray*' type='@' name='someKeys' index='0'/>
114
- <retval declared_type='void' type='v'/>
130
+ <arg type='@' index='0' declared_type='NSArray*' name='someKeys'/>
131
+ <retval type='v' declared_type='void'/>
115
132
  </method>
116
133
  <method selector='_saveInStore:error:'>
117
- <arg declared_type='NSFNanoStore*' type='@' name='someStore' index='0'/>
118
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='1'/>
119
- <retval declared_type='BOOL' type='B'/>
134
+ <arg type='@' index='0' declared_type='NSFNanoStore*' name='someStore'/>
135
+ <arg type='^@' index='1' type_modifier='o' declared_type='NSError**' name='outError'/>
136
+ <retval type='B' declared_type='BOOL'/>
120
137
  </method>
121
138
  <method selector='_setStore:'>
122
- <arg declared_type='NSFNanoStore*' type='@' name='aStore' index='0'/>
123
- <retval declared_type='void' type='v'/>
139
+ <arg type='@' index='0' declared_type='NSFNanoStore*' name='aStore'/>
140
+ <retval type='v' declared_type='void'/>
124
141
  </method>
125
142
  <method selector='addObject:error:'>
126
- <arg declared_type='id' type='@' name='theObject' index='0'/>
127
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='1'/>
128
- <retval declared_type='BOOL' type='B'/>
143
+ <arg type='@' index='0' declared_type='id' name='theObject'/>
144
+ <arg type='^@' index='1' type_modifier='o' declared_type='NSError**' name='outError'/>
145
+ <retval type='B' declared_type='BOOL'/>
129
146
  </method>
130
147
  <method selector='addObjectsFromArray:error:'>
131
- <arg declared_type='NSArray*' type='@' name='theObjects' index='0'/>
132
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='1'/>
133
- <retval declared_type='BOOL' type='B'/>
148
+ <arg type='@' index='0' declared_type='NSArray*' name='theObjects'/>
149
+ <arg type='^@' index='1' type_modifier='o' declared_type='NSError**' name='outError'/>
150
+ <retval type='B' declared_type='BOOL'/>
134
151
  </method>
135
- <method class_method='true' selector='bag'>
136
- <retval declared_type='NSFNanoBag*' type='@'/>
152
+ <method selector='bag' class_method='true'>
153
+ <retval type='@' declared_type='NSFNanoBag*'/>
137
154
  </method>
138
- <method class_method='true' selector='bagWithName:'>
139
- <arg declared_type='NSString*' type='@' name='theName' index='0'/>
140
- <retval declared_type='id' type='@'/>
155
+ <method selector='bagWithName:' class_method='true'>
156
+ <arg type='@' index='0' declared_type='NSString*' name='theName'/>
157
+ <retval type='@' declared_type='id'/>
141
158
  </method>
142
- <method class_method='true' selector='bagWithName:andObjects:'>
143
- <arg declared_type='NSString*' type='@' name='theName' index='0'/>
144
- <arg declared_type='NSArray*' type='@' name='theObjects' index='1'/>
145
- <retval declared_type='id' type='@'/>
159
+ <method selector='bagWithName:andObjects:' class_method='true'>
160
+ <arg type='@' index='0' declared_type='NSString*' name='theName'/>
161
+ <arg type='@' index='1' declared_type='NSArray*' name='theObjects'/>
162
+ <retval type='@' declared_type='id'/>
146
163
  </method>
147
- <method class_method='true' selector='bagWithObjects:'>
148
- <arg declared_type='NSArray*' type='@' name='theObjects' index='0'/>
149
- <retval declared_type='NSFNanoBag*' type='@'/>
164
+ <method selector='bagWithObjects:' class_method='true'>
165
+ <arg type='@' index='0' declared_type='NSArray*' name='theObjects'/>
166
+ <retval type='@' declared_type='NSFNanoBag*'/>
150
167
  </method>
151
168
  <method selector='count'>
152
- <retval declared_type='NSUInteger' type='I'/>
169
+ <retval type='I' declared_type='NSUInteger'/>
153
170
  </method>
154
171
  <method selector='deflateBag'>
155
- <retval declared_type='void' type='v'/>
172
+ <retval type='v' declared_type='void'/>
156
173
  </method>
157
174
  <method selector='description'>
158
- <retval declared_type='NSString*' type='@'/>
175
+ <retval type='@' declared_type='NSString*'/>
159
176
  </method>
160
177
  <method selector='dictionaryRepresentation'>
161
- <retval declared_type='NSDictionary*' type='@'/>
178
+ <retval type='@' declared_type='NSDictionary*'/>
162
179
  </method>
163
180
  <method selector='hasUnsavedChanges'>
164
- <retval declared_type='BOOL' type='B'/>
181
+ <retval type='B' declared_type='BOOL'/>
165
182
  </method>
166
183
  <method selector='inflateBag'>
167
- <retval declared_type='void' type='v'/>
184
+ <retval type='v' declared_type='void'/>
168
185
  </method>
169
186
  <method selector='initBagWithName:andObjects:'>
170
- <arg declared_type='NSString*' type='@' name='theName' index='0'/>
171
- <arg declared_type='NSArray*' type='@' name='someObjects' index='1'/>
172
- <retval declared_type='id' type='@'/>
187
+ <arg type='@' index='0' declared_type='NSString*' name='theName'/>
188
+ <arg type='@' index='1' declared_type='NSArray*' name='someObjects'/>
189
+ <retval type='@' declared_type='id'/>
173
190
  </method>
174
191
  <method selector='isEqualToNanoBag:'>
175
- <arg declared_type='NSFNanoBag*' type='@' name='otherNanoBag' index='0'/>
176
- <retval declared_type='BOOL' type='B'/>
192
+ <arg type='@' index='0' declared_type='NSFNanoBag*' name='otherNanoBag'/>
193
+ <retval type='B' declared_type='BOOL'/>
177
194
  </method>
178
195
  <method selector='key'>
179
- <retval declared_type='NSString*' type='@'/>
196
+ <retval type='@' declared_type='NSString*'/>
180
197
  </method>
181
198
  <method selector='name'>
182
- <retval declared_type='NSString*' type='@'/>
199
+ <retval type='@' declared_type='NSString*'/>
183
200
  </method>
184
201
  <method selector='reloadBagWithError:'>
185
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
186
- <retval declared_type='BOOL' type='B'/>
202
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
203
+ <retval type='B' declared_type='BOOL'/>
187
204
  </method>
188
205
  <method selector='removeAllObjects'>
189
- <retval declared_type='void' type='v'/>
206
+ <retval type='v' declared_type='void'/>
190
207
  </method>
191
208
  <method selector='removeObject:'>
192
- <arg declared_type='id' type='@' name='theObject' index='0'/>
193
- <retval declared_type='void' type='v'/>
209
+ <arg type='@' index='0' declared_type='id' name='theObject'/>
210
+ <retval type='v' declared_type='void'/>
194
211
  </method>
195
212
  <method selector='removeObjectWithKey:'>
196
- <arg declared_type='NSString*' type='@' name='theObjectKey' index='0'/>
197
- <retval declared_type='void' type='v'/>
213
+ <arg type='@' index='0' declared_type='NSString*' name='theObjectKey'/>
214
+ <retval type='v' declared_type='void'/>
198
215
  </method>
199
216
  <method selector='removeObjectsInArray:'>
200
- <arg declared_type='NSArray*' type='@' name='theObjects' index='0'/>
201
- <retval declared_type='void' type='v'/>
217
+ <arg type='@' index='0' declared_type='NSArray*' name='theObjects'/>
218
+ <retval type='v' declared_type='void'/>
202
219
  </method>
203
220
  <method selector='removeObjectsWithKeysInArray:'>
204
- <arg declared_type='NSArray*' type='@' name='theKeys' index='0'/>
205
- <retval declared_type='void' type='v'/>
221
+ <arg type='@' index='0' declared_type='NSArray*' name='theKeys'/>
222
+ <retval type='v' declared_type='void'/>
206
223
  </method>
207
224
  <method selector='removedObjects'>
208
- <retval declared_type='NSDictionary*' type='@'/>
225
+ <retval type='@' declared_type='NSDictionary*'/>
209
226
  </method>
210
227
  <method selector='saveAndReturnError:'>
211
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
212
- <retval declared_type='BOOL' type='B'/>
228
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
229
+ <retval type='B' declared_type='BOOL'/>
213
230
  </method>
214
231
  <method selector='savedObjects'>
215
- <retval declared_type='NSDictionary*' type='@'/>
232
+ <retval type='@' declared_type='NSDictionary*'/>
216
233
  </method>
217
234
  <method selector='setName:'>
218
- <arg declared_type='NSString*' type='@' name='name' index='0'/>
219
- <retval declared_type='void' type='v'/>
235
+ <arg type='@' index='0' declared_type='NSString*' name='name'/>
236
+ <retval type='v' declared_type='void'/>
220
237
  </method>
221
238
  <method selector='setStore:'>
222
- <arg declared_type='NSFNanoStore*' type='@' name='store' index='0'/>
223
- <retval declared_type='void' type='v'/>
239
+ <arg type='@' index='0' declared_type='NSFNanoStore*' name='store'/>
240
+ <retval type='v' declared_type='void'/>
224
241
  </method>
225
242
  <method selector='store'>
226
- <retval declared_type='NSFNanoStore*' type='@'/>
243
+ <retval type='@' declared_type='NSFNanoStore*'/>
227
244
  </method>
228
245
  <method selector='undoChangesWithError:'>
229
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
230
- <retval declared_type='BOOL' type='B'/>
246
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
247
+ <retval type='B' declared_type='BOOL'/>
231
248
  </method>
232
249
  <method selector='unsavedObjects'>
233
- <retval declared_type='NSDictionary*' type='@'/>
250
+ <retval type='@' declared_type='NSDictionary*'/>
234
251
  </method>
235
252
  </class>
236
253
  <class name='NSFNanoEngine'>
237
- <method class_method='true' selector='NSFEncodingTypeToNSString:'>
238
- <arg declared_type='NSFEncodingType' type='i' name='value' index='0'/>
239
- <retval declared_type='NSString*' type='@'/>
254
+ <method selector='JSONDescription'>
255
+ <retval type='@' declared_type='NSString*'/>
256
+ </method>
257
+ <method selector='NSFEncodingTypeToNSString:' class_method='true'>
258
+ <arg type='i' index='0' declared_type='NSFEncodingType' name='value'/>
259
+ <retval type='@' declared_type='NSString*'/>
240
260
  </method>
241
261
  <method selector='NSFP_ROWIDPresenceLocation:datatypes:'>
242
- <arg declared_type='NSArray*' type='@' name='tableColumns' index='0'/>
243
- <arg declared_type='NSArray*' type='@' name='datatypes' index='1'/>
244
- <retval declared_type='NSInteger' type='i'/>
262
+ <arg type='@' index='0' declared_type='NSArray*' name='tableColumns'/>
263
+ <arg type='@' index='1' declared_type='NSArray*' name='datatypes'/>
264
+ <retval type='i' declared_type='NSInteger'/>
245
265
  </method>
246
266
  <method selector='NSFP_beginTransactionMode:'>
247
- <arg declared_type='NSString*' type='@' name='theSQLStatement' index='0'/>
248
- <retval declared_type='BOOL' type='B'/>
267
+ <arg type='@' index='0' declared_type='NSString*' name='theSQLStatement'/>
268
+ <retval type='B' declared_type='BOOL'/>
249
269
  </method>
250
270
  <method selector='NSFP_cacheMethodToString'>
251
- <retval declared_type='NSString*' type='@'/>
271
+ <retval type='@' declared_type='NSString*'/>
252
272
  </method>
253
273
  <method selector='NSFP_createTable:withColumns:datatypes:isTemporary:'>
254
- <arg declared_type='NSString*' type='@' name='table' index='0'/>
255
- <arg declared_type='NSArray*' type='@' name='tableColumns' index='1'/>
256
- <arg declared_type='NSArray*' type='@' name='tableDatatypes' index='2'/>
257
- <arg declared_type='BOOL' type='B' name='isTemporaryFlag' index='3'/>
258
- <retval declared_type='BOOL' type='B'/>
274
+ <arg type='@' index='0' declared_type='NSString*' name='table'/>
275
+ <arg type='@' index='1' declared_type='NSArray*' name='tableColumns'/>
276
+ <arg type='@' index='2' declared_type='NSArray*' name='tableDatatypes'/>
277
+ <arg type='B' index='3' declared_type='BOOL' name='isTemporaryFlag'/>
278
+ <retval type='B' declared_type='BOOL'/>
259
279
  </method>
260
280
  <method selector='NSFP_datatypeForColumn:'>
261
- <arg declared_type='NSString*' type='@' name='tableAndColumn' index='0'/>
262
- <retval declared_type='NSFNanoDatatype' type='i'/>
281
+ <arg type='@' index='0' declared_type='NSString*' name='tableAndColumn'/>
282
+ <retval type='i' declared_type='NSFNanoDatatype'/>
263
283
  </method>
264
284
  <method selector='NSFP_datatypeForTable:column:'>
265
- <arg declared_type='NSString*' type='@' name='table' index='0'/>
266
- <arg declared_type='NSString*' type='@' name='column' index='1'/>
267
- <retval declared_type='NSFNanoDatatype' type='i'/>
285
+ <arg type='@' index='0' declared_type='NSString*' name='table'/>
286
+ <arg type='@' index='1' declared_type='NSString*' name='column'/>
287
+ <retval type='i' declared_type='NSFNanoDatatype'/>
268
288
  </method>
269
- <method class_method='true' selector='NSFP_decodeQuantum:andSource:'>
270
- <arg declared_type='unsigned char*' type='*' name='dest' index='0'/>
271
- <arg declared_type='char*' type='*' const='true' name='src' index='1'/>
272
- <retval declared_type='void' type='v'/>
289
+ <method selector='NSFP_decodeQuantum:andSource:' class_method='true'>
290
+ <arg type='*' index='0' declared_type='unsigned char*' name='dest'/>
291
+ <arg type='*' index='1' declared_type='char*' name='src' const='true'/>
292
+ <retval type='v' declared_type='void'/>
273
293
  </method>
274
294
  <method selector='NSFP_flattenAllTables'>
275
- <retval declared_type='NSArray*' type='@'/>
295
+ <retval type='@' declared_type='NSArray*'/>
276
296
  </method>
277
297
  <method selector='NSFP_insertStringValues:forColumns:table:'>
278
- <arg declared_type='NSArray*' type='@' name='values' index='0'/>
279
- <arg declared_type='NSArray*' type='@' name='columns' index='1'/>
280
- <arg declared_type='NSString*' type='@' name='table' index='2'/>
281
- <retval declared_type='BOOL' type='B'/>
298
+ <arg type='@' index='0' declared_type='NSArray*' name='values'/>
299
+ <arg type='@' index='1' declared_type='NSArray*' name='columns'/>
300
+ <arg type='@' index='2' declared_type='NSString*' name='table'/>
301
+ <retval type='B' declared_type='BOOL'/>
282
302
  </method>
283
303
  <method selector='NSFP_installCommitCallback'>
284
- <retval declared_type='void' type='v'/>
304
+ <retval type='v' declared_type='void'/>
285
305
  </method>
286
306
  <method selector='NSFP_isColumnROWIDAlias:forTable:'>
287
- <arg declared_type='NSString*' type='@' name='column' index='0'/>
288
- <arg declared_type='NSString*' type='@' name='table' index='1'/>
289
- <retval declared_type='BOOL' type='B'/>
307
+ <arg type='@' index='0' declared_type='NSString*' name='column'/>
308
+ <arg type='@' index='1' declared_type='NSString*' name='table'/>
309
+ <retval type='B' declared_type='BOOL'/>
290
310
  </method>
291
311
  <method selector='NSFP_nestedDescriptionWithPrefixedSpace:'>
292
- <arg declared_type='NSString*' type='@' name='prefixedSpace' index='0'/>
293
- <retval declared_type='NSString*' type='@'/>
312
+ <arg type='@' index='0' declared_type='NSString*' name='prefixedSpace'/>
313
+ <retval type='@' declared_type='NSString*'/>
294
314
  </method>
295
315
  <method selector='NSFP_prefixWithDotDelimiter:'>
296
- <arg declared_type='NSString*' type='@' name='tableAndColumn' index='0'/>
297
- <retval declared_type='NSString*' type='@'/>
316
+ <arg type='@' index='0' declared_type='NSString*' name='tableAndColumn'/>
317
+ <retval type='@' declared_type='NSString*'/>
298
318
  </method>
299
319
  <method selector='NSFP_prepareSQLite3Statement:theSQLStatement:'>
300
- <arg declared_type='sqlite3_stmt**' type='^^{sqlite3_stmt}' name='aStatement' index='0'/>
301
- <arg declared_type='NSString*' type='@' name='aSQLQuery' index='1'/>
302
- <retval declared_type='NSInteger' type='i'/>
320
+ <arg type='^^{sqlite3_stmt}' index='0' declared_type='sqlite3_stmt**' name='aStatement'/>
321
+ <arg type='@' index='1' declared_type='NSString*' name='aSQLQuery'/>
322
+ <retval type='i' declared_type='NSInteger'/>
303
323
  </method>
304
324
  <method selector='NSFP_rebuildDatatypeCache'>
305
- <retval declared_type='void' type='v'/>
325
+ <retval type='v' declared_type='void'/>
306
326
  </method>
307
327
  <method selector='NSFP_removeColumn:fromTable:'>
308
- <arg declared_type='NSString*' type='@' name='column' index='0'/>
309
- <arg declared_type='NSString*' type='@' name='table' index='1'/>
310
- <retval declared_type='BOOL' type='B'/>
328
+ <arg type='@' index='0' declared_type='NSString*' name='column'/>
329
+ <arg type='@' index='1' declared_type='NSString*' name='table'/>
330
+ <retval type='B' declared_type='BOOL'/>
311
331
  </method>
312
332
  <method selector='NSFP_setFullColumnNamesEnabled'>
313
- <retval declared_type='void' type='v'/>
333
+ <retval type='v' declared_type='void'/>
314
334
  </method>
315
- <method class_method='true' selector='NSFP_sharedROWIDKeywords'>
316
- <retval declared_type='NSArray*' type='@'/>
335
+ <method selector='NSFP_sharedROWIDKeywords' class_method='true'>
336
+ <retval type='@' declared_type='NSArray*'/>
317
337
  </method>
318
338
  <method selector='NSFP_sqlString:appendingTags:'>
319
- <arg declared_type='NSMutableString*' type='@' name='theSQLStatement' index='0'/>
320
- <arg declared_type='NSArray*' type='@' name='columns' index='1'/>
321
- <retval declared_type='void' type='v'/>
339
+ <arg type='@' index='0' declared_type='NSMutableString*' name='theSQLStatement'/>
340
+ <arg type='@' index='1' declared_type='NSArray*' name='columns'/>
341
+ <retval type='v' declared_type='void'/>
322
342
  </method>
323
343
  <method selector='NSFP_sqlString:appendingTags:quoteTags:'>
324
- <arg declared_type='NSMutableString*' type='@' name='theSQLStatement' index='0'/>
325
- <arg declared_type='NSArray*' type='@' name='tags' index='1'/>
326
- <arg declared_type='BOOL' type='B' name='flag' index='2'/>
327
- <retval declared_type='void' type='v'/>
344
+ <arg type='@' index='0' declared_type='NSMutableString*' name='theSQLStatement'/>
345
+ <arg type='@' index='1' declared_type='NSArray*' name='tags'/>
346
+ <arg type='B' index='2' declared_type='BOOL' name='flag'/>
347
+ <retval type='v' declared_type='void'/>
328
348
  </method>
329
349
  <method selector='NSFP_sqlString:forTable:withColumns:datatypes:'>
330
- <arg declared_type='NSMutableString*' type='@' name='theSQLStatement' index='0'/>
331
- <arg declared_type='NSString*' type='@' name='table' index='1'/>
332
- <arg declared_type='NSArray*' type='@' name='columns' index='2'/>
333
- <arg declared_type='NSArray*' type='@' name='datatypes' index='3'/>
334
- <retval declared_type='BOOL' type='B'/>
350
+ <arg type='@' index='0' declared_type='NSMutableString*' name='theSQLStatement'/>
351
+ <arg type='@' index='1' declared_type='NSString*' name='table'/>
352
+ <arg type='@' index='2' declared_type='NSArray*' name='columns'/>
353
+ <arg type='@' index='3' declared_type='NSArray*' name='datatypes'/>
354
+ <retval type='B' declared_type='BOOL'/>
335
355
  </method>
336
- <method class_method='true' selector='NSFP_stripBitsFromExtendedResultCode:'>
337
- <arg declared_type='int' type='i' name='extendedResult' index='0'/>
338
- <retval declared_type='int' type='i'/>
356
+ <method selector='NSFP_stripBitsFromExtendedResultCode:' class_method='true'>
357
+ <arg type='i' index='0' declared_type='int' name='extendedResult'/>
358
+ <retval type='i' declared_type='int'/>
339
359
  </method>
340
360
  <method selector='NSFP_suffixWithDotDelimiter:'>
341
- <arg declared_type='NSString*' type='@' name='tableAndColumn' index='0'/>
342
- <retval declared_type='NSString*' type='@'/>
361
+ <arg type='@' index='0' declared_type='NSString*' name='tableAndColumn'/>
362
+ <retval type='@' declared_type='NSString*'/>
343
363
  </method>
344
364
  <method selector='NSFP_uninstallCommitCallback'>
345
- <retval declared_type='void' type='v'/>
365
+ <retval type='v' declared_type='void'/>
346
366
  </method>
347
- <method class_method='true' selector='NSStringToNSFEncodingType:'>
348
- <arg declared_type='NSString*' type='@' name='value' index='0'/>
349
- <retval declared_type='NSFEncodingType' type='i'/>
367
+ <method selector='NSStringToNSFEncodingType:' class_method='true'>
368
+ <arg type='@' index='0' declared_type='NSString*' name='value'/>
369
+ <retval type='i' declared_type='NSFEncodingType'/>
350
370
  </method>
351
- <method class_method='true' selector='_plistToDictionary:'>
352
- <arg declared_type='NSString*' type='@' name='aPlist' index='0'/>
353
- <retval declared_type='NSDictionary*' type='@'/>
371
+ <method selector='_plistToDictionary:' class_method='true'>
372
+ <arg type='@' index='0' declared_type='NSString*' name='aPlist'/>
373
+ <retval type='@' declared_type='NSDictionary*'/>
354
374
  </method>
355
375
  <method selector='allTables'>
356
- <retval declared_type='NSDictionary*' type='@'/>
376
+ <retval type='@' declared_type='NSDictionary*'/>
357
377
  </method>
358
378
  <method selector='beginDeferredTransaction'>
359
- <retval declared_type='BOOL' type='B'/>
379
+ <retval type='B' declared_type='BOOL'/>
360
380
  </method>
361
381
  <method selector='beginTransaction'>
362
- <retval declared_type='BOOL' type='B'/>
382
+ <retval type='B' declared_type='BOOL'/>
363
383
  </method>
364
384
  <method selector='busyTimeout'>
365
- <retval declared_type='unsigned int' type='I'/>
385
+ <retval type='I' declared_type='unsigned int'/>
366
386
  </method>
367
387
  <method selector='cacheMethod'>
368
- <retval declared_type='NSFCacheMethod' type='i'/>
388
+ <retval type='i' declared_type='NSFCacheMethod'/>
369
389
  </method>
370
390
  <method selector='cacheSize'>
371
- <retval declared_type='NSUInteger' type='I'/>
391
+ <retval type='I' declared_type='NSUInteger'/>
372
392
  </method>
373
393
  <method selector='close'>
374
- <retval declared_type='BOOL' type='B'/>
394
+ <retval type='B' declared_type='BOOL'/>
375
395
  </method>
376
396
  <method selector='columnsForTable:'>
377
- <arg declared_type='NSString*' type='@' name='theTable' index='0'/>
378
- <retval declared_type='NSArray*' type='@'/>
397
+ <arg type='@' index='0' declared_type='NSString*' name='theTable'/>
398
+ <retval type='@' declared_type='NSArray*'/>
379
399
  </method>
380
400
  <method selector='commitTransaction'>
381
- <retval declared_type='BOOL' type='B'/>
401
+ <retval type='B' declared_type='BOOL'/>
382
402
  </method>
383
403
  <method selector='compact'>
384
- <retval declared_type='BOOL' type='B'/>
404
+ <retval type='B' declared_type='BOOL'/>
385
405
  </method>
386
406
  <method selector='createIndexForColumn:table:isUnique:'>
387
- <arg declared_type='NSString*' type='@' name='theColumn' index='0'/>
388
- <arg declared_type='NSString*' type='@' name='theTable' index='1'/>
389
- <arg declared_type='BOOL' type='B' name='isUnique' index='2'/>
390
- <retval declared_type='BOOL' type='B'/>
407
+ <arg type='@' index='0' declared_type='NSString*' name='theColumn'/>
408
+ <arg type='@' index='1' declared_type='NSString*' name='theTable'/>
409
+ <arg type='B' index='2' declared_type='BOOL' name='isUnique'/>
410
+ <retval type='B' declared_type='BOOL'/>
391
411
  </method>
392
412
  <method selector='createTable:withColumns:datatypes:'>
393
- <arg declared_type='NSString*' type='@' name='theTable' index='0'/>
394
- <arg declared_type='NSArray*' type='@' name='theColumns' index='1'/>
395
- <arg declared_type='NSArray*' type='@' name='theDatatypes' index='2'/>
396
- <retval declared_type='BOOL' type='B'/>
413
+ <arg type='@' index='0' declared_type='NSString*' name='theTable'/>
414
+ <arg type='@' index='1' declared_type='NSArray*' name='theColumns'/>
415
+ <arg type='@' index='2' declared_type='NSArray*' name='theDatatypes'/>
416
+ <retval type='B' declared_type='BOOL'/>
397
417
  </method>
398
- <method class_method='true' selector='databaseWithPath:'>
399
- <arg declared_type='NSString*' type='@' name='thePath' index='0'/>
400
- <retval declared_type='id' type='@'/>
418
+ <method selector='databaseWithPath:' class_method='true'>
419
+ <arg type='@' index='0' declared_type='NSString*' name='thePath'/>
420
+ <retval type='@' declared_type='id'/>
401
421
  </method>
402
422
  <method selector='datatypesForTable:'>
403
- <arg declared_type='NSString*' type='@' name='theTable' index='0'/>
404
- <retval declared_type='NSArray*' type='@'/>
423
+ <arg type='@' index='0' declared_type='NSString*' name='theTable'/>
424
+ <retval type='@' declared_type='NSArray*'/>
405
425
  </method>
406
- <method class_method='true' selector='decodeDataFromBase64:'>
407
- <arg declared_type='NSString*' type='@' name='theEncodedData' index='0'/>
408
- <retval declared_type='NSData*' type='@'/>
426
+ <method selector='decodeDataFromBase64:' class_method='true'>
427
+ <arg type='@' index='0' declared_type='NSString*' name='theEncodedData'/>
428
+ <retval type='@' declared_type='NSData*'/>
409
429
  </method>
410
430
  <method selector='description'>
411
- <retval declared_type='NSString*' type='@'/>
431
+ <retval type='@' declared_type='NSString*'/>
432
+ </method>
433
+ <method selector='dictionaryDescription'>
434
+ <retval type='@' declared_type='NSFOrderedDictionary*'/>
412
435
  </method>
413
436
  <method selector='dropIndex:'>
414
- <arg declared_type='NSString*' type='@' name='theIndex' index='0'/>
415
- <retval declared_type='void' type='v'/>
437
+ <arg type='@' index='0' declared_type='NSString*' name='theIndex'/>
438
+ <retval type='v' declared_type='void'/>
416
439
  </method>
417
440
  <method selector='dropTable:'>
418
- <arg declared_type='NSString*' type='@' name='theTable' index='0'/>
419
- <retval declared_type='BOOL' type='B'/>
441
+ <arg type='@' index='0' declared_type='NSString*' name='theTable'/>
442
+ <retval type='B' declared_type='BOOL'/>
420
443
  </method>
421
- <method class_method='true' selector='encodeDataToBase64:'>
422
- <arg declared_type='NSData*' type='@' name='theData' index='0'/>
423
- <retval declared_type='NSString*' type='@'/>
444
+ <method selector='encodeDataToBase64:' class_method='true'>
445
+ <arg type='@' index='0' declared_type='NSData*' name='theData'/>
446
+ <retval type='@' declared_type='NSString*'/>
424
447
  </method>
425
448
  <method selector='encoding'>
426
- <retval declared_type='NSFEncodingType' type='i'/>
449
+ <retval type='i' declared_type='NSFEncodingType'/>
427
450
  </method>
428
451
  <method selector='executeSQL:'>
429
- <arg declared_type='NSString*' type='@' name='theSQLStatement' index='0'/>
430
- <retval declared_type='NSFNanoResult*' type='@'/>
452
+ <arg type='@' index='0' declared_type='NSString*' name='theSQLStatement'/>
453
+ <retval type='@' declared_type='NSFNanoResult*'/>
431
454
  </method>
432
455
  <method selector='indexedColumnsForTable:'>
433
- <arg declared_type='NSString*' type='@' name='theTable' index='0'/>
434
- <retval declared_type='NSArray*' type='@'/>
456
+ <arg type='@' index='0' declared_type='NSString*' name='theTable'/>
457
+ <retval type='@' declared_type='NSArray*'/>
435
458
  </method>
436
459
  <method selector='indexes'>
437
- <retval declared_type='NSArray*' type='@'/>
460
+ <retval type='@' declared_type='NSArray*'/>
438
461
  </method>
439
462
  <method selector='initWithPath:'>
440
- <arg declared_type='NSString*' type='@' name='thePath' index='0'/>
441
- <retval declared_type='id' type='@'/>
463
+ <arg type='@' index='0' declared_type='NSString*' name='thePath'/>
464
+ <retval type='@' declared_type='id'/>
442
465
  </method>
443
466
  <method selector='integrityCheck'>
444
- <retval declared_type='BOOL' type='B'/>
467
+ <retval type='B' declared_type='BOOL'/>
445
468
  </method>
446
469
  <method selector='isDatabaseOpen'>
447
- <retval declared_type='BOOL' type='B'/>
470
+ <retval type='B' declared_type='BOOL'/>
448
471
  </method>
449
472
  <method selector='isTransactionActive'>
450
- <retval declared_type='BOOL' type='B'/>
473
+ <retval type='B' declared_type='BOOL'/>
451
474
  </method>
452
475
  <method selector='journalModeAndReturnError:'>
453
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
454
- <retval declared_type='NSFJournalModeMode' type='i'/>
476
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
477
+ <retval type='i' declared_type='NSFJournalModeMode'/>
455
478
  </method>
456
479
  <method selector='maxRowUIDForTable:'>
457
- <arg declared_type='NSString*' type='@' name='theTable' index='0'/>
458
- <retval declared_type='long long' type='q'/>
480
+ <arg type='@' index='0' declared_type='NSString*' name='theTable'/>
481
+ <retval type='q' declared_type='long long'/>
459
482
  </method>
460
- <method class_method='true' selector='nanoStoreEngineVersion'>
461
- <retval declared_type='NSString*' type='@'/>
483
+ <method selector='nanoStoreEngineVersion' class_method='true'>
484
+ <retval type='@' declared_type='NSString*'/>
462
485
  </method>
463
486
  <method selector='openWithCacheMethod:useFastMode:'>
464
- <arg declared_type='NSFCacheMethod' type='i' name='theCacheMethod' index='0'/>
465
- <arg declared_type='BOOL' type='B' name='useFastMode' index='1'/>
466
- <retval declared_type='BOOL' type='B'/>
487
+ <arg type='i' index='0' declared_type='NSFCacheMethod' name='theCacheMethod'/>
488
+ <arg type='B' index='1' declared_type='BOOL' name='useFastMode'/>
489
+ <retval type='B' declared_type='BOOL'/>
467
490
  </method>
468
491
  <method selector='pageSize'>
469
- <retval declared_type='NSUInteger' type='I'/>
492
+ <retval type='I' declared_type='NSUInteger'/>
470
493
  </method>
471
494
  <method selector='path'>
472
- <retval declared_type='NSString*' type='@'/>
495
+ <retval type='@' declared_type='NSString*'/>
473
496
  </method>
474
- <method class_method='true' selector='recommendedCacheSize'>
475
- <retval declared_type='NSUInteger' type='I'/>
497
+ <method selector='recommendedCacheSize' class_method='true'>
498
+ <retval type='I' declared_type='NSUInteger'/>
476
499
  </method>
477
500
  <method selector='rollbackTransaction'>
478
- <retval declared_type='BOOL' type='B'/>
501
+ <retval type='B' declared_type='BOOL'/>
479
502
  </method>
480
503
  <method selector='setBusyTimeout:'>
481
- <arg declared_type='unsigned int' type='I' name='theTimeout' index='0'/>
482
- <retval declared_type='void' type='v'/>
504
+ <arg type='I' index='0' declared_type='unsigned int' name='theTimeout'/>
505
+ <retval type='v' declared_type='void'/>
483
506
  </method>
484
507
  <method selector='setCacheMethod:'>
485
- <arg declared_type='NSFCacheMethod' type='i' name='cacheMethod' index='0'/>
486
- <retval declared_type='void' type='v'/>
508
+ <arg type='i' index='0' declared_type='NSFCacheMethod' name='cacheMethod'/>
509
+ <retval type='v' declared_type='void'/>
487
510
  </method>
488
511
  <method selector='setCacheSize:'>
489
- <arg declared_type='NSUInteger' type='I' name='numberOfPages' index='0'/>
490
- <retval declared_type='BOOL' type='B'/>
512
+ <arg type='I' index='0' declared_type='NSUInteger' name='numberOfPages'/>
513
+ <retval type='B' declared_type='BOOL'/>
491
514
  </method>
492
515
  <method selector='setEncodingType:'>
493
- <arg declared_type='NSFEncodingType' type='i' name='theEncodingType' index='0'/>
494
- <retval declared_type='BOOL' type='B'/>
516
+ <arg type='i' index='0' declared_type='NSFEncodingType' name='theEncodingType'/>
517
+ <retval type='B' declared_type='BOOL'/>
495
518
  </method>
496
519
  <method selector='setJournalMode:'>
497
- <arg declared_type='NSFJournalModeMode' type='i' name='theMode' index='0'/>
498
- <retval declared_type='BOOL' type='B'/>
520
+ <arg type='i' index='0' declared_type='NSFJournalModeMode' name='theMode'/>
521
+ <retval type='B' declared_type='BOOL'/>
499
522
  </method>
500
523
  <method selector='setPageSize:'>
501
- <arg declared_type='NSUInteger' type='I' name='numberOfBytes' index='0'/>
502
- <retval declared_type='BOOL' type='B'/>
524
+ <arg type='I' index='0' declared_type='NSUInteger' name='numberOfBytes'/>
525
+ <retval type='B' declared_type='BOOL'/>
503
526
  </method>
504
527
  <method selector='setSynchronousMode:'>
505
- <arg declared_type='NSFSynchronousMode' type='i' name='theSynchronousMode' index='0'/>
506
- <retval declared_type='void' type='v'/>
528
+ <arg type='i' index='0' declared_type='NSFSynchronousMode' name='theSynchronousMode'/>
529
+ <retval type='v' declared_type='void'/>
507
530
  </method>
508
531
  <method selector='setTempStoreMode:'>
509
- <arg declared_type='NSFTempStoreMode' type='i' name='theTempStoreMode' index='0'/>
510
- <retval declared_type='void' type='v'/>
532
+ <arg type='i' index='0' declared_type='NSFTempStoreMode' name='theTempStoreMode'/>
533
+ <retval type='v' declared_type='void'/>
511
534
  </method>
512
- <method class_method='true' selector='sharedNanoStoreEngineDatatypes'>
513
- <retval declared_type='NSSet*' type='@'/>
535
+ <method selector='sharedNanoStoreEngineDatatypes' class_method='true'>
536
+ <retval type='@' declared_type='NSSet*'/>
514
537
  </method>
515
538
  <method selector='sqlite'>
516
- <retval declared_type='sqlite3*' type='^{sqlite3=}'/>
539
+ <retval type='^{sqlite3=}' declared_type='sqlite3*'/>
517
540
  </method>
518
- <method class_method='true' selector='sqliteVersion'>
519
- <retval declared_type='NSString*' type='@'/>
541
+ <method selector='sqliteVersion' class_method='true'>
542
+ <retval type='@' declared_type='NSString*'/>
520
543
  </method>
521
- <method class_method='true' selector='stringWithUUID'>
522
- <retval declared_type='NSString*' type='@'/>
544
+ <method selector='stringWithUUID' class_method='true'>
545
+ <retval type='@' declared_type='NSString*'/>
523
546
  </method>
524
547
  <method selector='synchronousMode'>
525
- <retval declared_type='NSFSynchronousMode' type='i'/>
548
+ <retval type='i' declared_type='NSFSynchronousMode'/>
526
549
  </method>
527
- <method class_method='true' selector='systemPageSize'>
528
- <retval declared_type='NSInteger' type='i'/>
550
+ <method selector='systemPageSize' class_method='true'>
551
+ <retval type='i' declared_type='NSInteger'/>
529
552
  </method>
530
553
  <method selector='tables'>
531
- <retval declared_type='NSArray*' type='@'/>
554
+ <retval type='@' declared_type='NSArray*'/>
532
555
  </method>
533
556
  <method selector='tempStoreMode'>
534
- <retval declared_type='NSFTempStoreMode' type='i'/>
557
+ <retval type='i' declared_type='NSFTempStoreMode'/>
535
558
  </method>
536
559
  <method selector='temporaryTables'>
537
- <retval declared_type='NSArray*' type='@'/>
560
+ <retval type='@' declared_type='NSArray*'/>
538
561
  </method>
539
562
  </class>
540
563
  <class name='NSFNanoExpression'>
564
+ <method selector='JSONDescription'>
565
+ <retval type='@' declared_type='NSString*'/>
566
+ </method>
541
567
  <method selector='addPredicate:withOperator:'>
542
- <arg declared_type='NSFNanoPredicate*' type='@' name='thePredicate' index='0'/>
543
- <arg declared_type='NSFOperator' type='i' name='theOperator' index='1'/>
544
- <retval declared_type='void' type='v'/>
568
+ <arg type='@' index='0' declared_type='NSFNanoPredicate*' name='thePredicate'/>
569
+ <arg type='i' index='1' declared_type='NSFOperator' name='theOperator'/>
570
+ <retval type='v' declared_type='void'/>
571
+ </method>
572
+ <method selector='arrayDescription'>
573
+ <retval type='@' declared_type='NSArray*'/>
545
574
  </method>
546
575
  <method selector='description'>
547
- <retval declared_type='NSString*' type='@'/>
576
+ <retval type='@' declared_type='NSString*'/>
548
577
  </method>
549
- <method class_method='true' selector='expressionWithPredicate:'>
550
- <arg declared_type='NSFNanoPredicate*' type='@' name='thePredicate' index='0'/>
551
- <retval declared_type='NSFNanoExpression*' type='@'/>
578
+ <method selector='expressionWithPredicate:' class_method='true'>
579
+ <arg type='@' index='0' declared_type='NSFNanoPredicate*' name='thePredicate'/>
580
+ <retval type='@' declared_type='NSFNanoExpression*'/>
552
581
  </method>
553
582
  <method selector='initWithPredicate:'>
554
- <arg declared_type='NSFNanoPredicate*' type='@' name='thePredicate' index='0'/>
555
- <retval declared_type='id' type='@'/>
583
+ <arg type='@' index='0' declared_type='NSFNanoPredicate*' name='thePredicate'/>
584
+ <retval type='@' declared_type='id'/>
556
585
  </method>
557
586
  <method selector='operators'>
558
- <retval declared_type='NSArray*' type='@'/>
587
+ <retval type='@' declared_type='NSArray*'/>
559
588
  </method>
560
589
  <method selector='predicates'>
561
- <retval declared_type='NSArray*' type='@'/>
590
+ <retval type='@' declared_type='NSArray*'/>
562
591
  </method>
563
592
  </class>
564
593
  <class name='NSFNanoObject'>
594
+ <method selector='JSONDescription'>
595
+ <retval type='@' declared_type='NSString*'/>
596
+ </method>
597
+ <method selector='_NSObjectToJSONString:error:' class_method='true'>
598
+ <arg type='@' index='0' declared_type='id' name='object'/>
599
+ <arg type='^@' index='1' declared_type='NSError**' name='error'/>
600
+ <retval type='@' declared_type='NSString*'/>
601
+ </method>
602
+ <method selector='_safeArrayFromArray:' class_method='true'>
603
+ <arg type='@' index='0' declared_type='NSArray*' name='array'/>
604
+ <retval type='@' declared_type='NSArray*'/>
605
+ </method>
606
+ <method selector='_safeDictionaryFromDictionary:' class_method='true'>
607
+ <arg type='@' index='0' declared_type='NSDictionary*' name='dictionary'/>
608
+ <retval type='@' declared_type='NSDictionary*'/>
609
+ </method>
610
+ <method selector='_safeObjectFromObject:' class_method='true'>
611
+ <arg type='@' index='0' declared_type='id' name='object'/>
612
+ <retval type='@' declared_type='id'/>
613
+ </method>
565
614
  <method selector='_setOriginalClassString:'>
566
- <arg declared_type='NSString*' type='@' name='theClassString' index='0'/>
567
- <retval declared_type='void' type='v'/>
615
+ <arg type='@' index='0' declared_type='NSString*' name='theClassString'/>
616
+ <retval type='v' declared_type='void'/>
568
617
  </method>
569
618
  <method selector='addEntriesFromDictionary:'>
570
- <arg declared_type='NSDictionary*' type='@' name='otherDictionary' index='0'/>
571
- <retval declared_type='void' type='v'/>
619
+ <arg type='@' index='0' declared_type='NSDictionary*' name='otherDictionary'/>
620
+ <retval type='v' declared_type='void'/>
572
621
  </method>
573
622
  <method selector='description'>
574
- <retval declared_type='NSString*' type='@'/>
623
+ <retval type='@' declared_type='NSString*'/>
575
624
  </method>
576
625
  <method selector='dictionaryRepresentation'>
577
- <retval declared_type='NSDictionary*' type='@'/>
626
+ <retval type='@' declared_type='NSDictionary*'/>
578
627
  </method>
579
628
  <method selector='info'>
580
- <retval declared_type='NSDictionary*' type='@'/>
629
+ <retval type='@' declared_type='NSDictionary*'/>
581
630
  </method>
582
631
  <method selector='initFromDictionaryRepresentation:'>
583
- <arg declared_type='NSDictionary*' type='@' name='theDictionary' index='0'/>
584
- <retval declared_type='id' type='@'/>
632
+ <arg type='@' index='0' declared_type='NSDictionary*' name='theDictionary'/>
633
+ <retval type='@' declared_type='id'/>
585
634
  </method>
586
635
  <method selector='initFromDictionaryRepresentation:key:'>
587
- <arg declared_type='NSDictionary*' type='@' name='theDictionary' index='0'/>
588
- <arg declared_type='NSString*' type='@' name='theKey' index='1'/>
589
- <retval declared_type='id' type='@'/>
636
+ <arg type='@' index='0' declared_type='NSDictionary*' name='theDictionary'/>
637
+ <arg type='@' index='1' declared_type='NSString*' name='theKey'/>
638
+ <retval type='@' declared_type='id'/>
590
639
  </method>
591
640
  <method selector='isEqualToNanoObject:'>
592
- <arg declared_type='NSFNanoObject*' type='@' name='otherNanoObject' index='0'/>
593
- <retval declared_type='BOOL' type='B'/>
641
+ <arg type='@' index='0' declared_type='NSFNanoObject*' name='otherNanoObject'/>
642
+ <retval type='B' declared_type='BOOL'/>
594
643
  </method>
595
644
  <method selector='key'>
596
- <retval declared_type='NSString*' type='@'/>
645
+ <retval type='@' declared_type='NSString*'/>
597
646
  </method>
598
- <method class_method='true' selector='nanoObject'>
599
- <retval declared_type='NSFNanoObject*' type='@'/>
647
+ <method selector='nanoObject' class_method='true'>
648
+ <retval type='@' declared_type='NSFNanoObject*'/>
600
649
  </method>
601
- <method class_method='true' selector='nanoObjectWithDictionary:'>
602
- <arg declared_type='NSDictionary*' type='@' name='theDictionary' index='0'/>
603
- <retval declared_type='NSFNanoObject*' type='@'/>
650
+ <method selector='nanoObjectWithDictionary:' class_method='true'>
651
+ <arg type='@' index='0' declared_type='NSDictionary*' name='theDictionary'/>
652
+ <retval type='@' declared_type='NSFNanoObject*'/>
604
653
  </method>
605
- <method class_method='true' selector='nanoObjectWithDictionary:key:'>
606
- <arg declared_type='NSDictionary*' type='@' name='theDictionary' index='0'/>
607
- <arg declared_type='NSString*' type='@' name='theKey' index='1'/>
608
- <retval declared_type='NSFNanoObject*' type='@'/>
654
+ <method selector='nanoObjectWithDictionary:key:' class_method='true'>
655
+ <arg type='@' index='0' declared_type='NSDictionary*' name='theDictionary'/>
656
+ <arg type='@' index='1' declared_type='NSString*' name='theKey'/>
657
+ <retval type='@' declared_type='NSFNanoObject*'/>
609
658
  </method>
610
659
  <method selector='objectForKey:'>
611
- <arg declared_type='NSString*' type='@' name='aKey' index='0'/>
612
- <retval declared_type='id' type='@'/>
660
+ <arg type='@' index='0' declared_type='NSString*' name='aKey'/>
661
+ <retval type='@' declared_type='id'/>
613
662
  </method>
614
663
  <method selector='originalClassString'>
615
- <retval declared_type='NSString*' type='@'/>
664
+ <retval type='@' declared_type='NSString*'/>
616
665
  </method>
617
666
  <method selector='removeAllObjects'>
618
- <retval declared_type='void' type='v'/>
667
+ <retval type='v' declared_type='void'/>
619
668
  </method>
620
669
  <method selector='removeObjectForKey:'>
621
- <arg declared_type='NSString*' type='@' name='aKey' index='0'/>
622
- <retval declared_type='void' type='v'/>
670
+ <arg type='@' index='0' declared_type='NSString*' name='aKey'/>
671
+ <retval type='v' declared_type='void'/>
623
672
  </method>
624
673
  <method selector='removeObjectsForKeys:'>
625
- <arg declared_type='NSArray*' type='@' name='keyArray' index='0'/>
626
- <retval declared_type='void' type='v'/>
674
+ <arg type='@' index='0' declared_type='NSArray*' name='keyArray'/>
675
+ <retval type='v' declared_type='void'/>
676
+ </method>
677
+ <method selector='saveStoreAndReturnError:'>
678
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
679
+ <retval type='B' declared_type='BOOL'/>
627
680
  </method>
628
681
  <method selector='setObject:forKey:'>
629
- <arg declared_type='id' type='@' name='anObject' index='0'/>
630
- <arg declared_type='NSString*' type='@' name='aKey' index='1'/>
631
- <retval declared_type='void' type='v'/>
682
+ <arg type='@' index='0' declared_type='id' name='anObject'/>
683
+ <arg type='@' index='1' declared_type='NSString*' name='aKey'/>
684
+ <retval type='v' declared_type='void'/>
685
+ </method>
686
+ <method selector='setStore:'>
687
+ <arg type='@' index='0' declared_type='NSFNanoStore*' name='store'/>
688
+ <retval type='v' declared_type='void'/>
689
+ </method>
690
+ <method selector='store'>
691
+ <retval type='@' declared_type='NSFNanoStore*'/>
632
692
  </method>
633
693
  </class>
634
694
  <class name='NSFNanoPredicate'>
695
+ <method selector='JSONDescription'>
696
+ <retval type='@' declared_type='NSString*'/>
697
+ </method>
635
698
  <method selector='column'>
636
- <retval declared_type='NSFTableColumnType' type='i'/>
699
+ <retval type='i' declared_type='NSFTableColumnType'/>
637
700
  </method>
638
701
  <method selector='description'>
639
- <retval declared_type='NSString*' type='@'/>
702
+ <retval type='@' declared_type='NSString*'/>
640
703
  </method>
641
704
  <method selector='initWithColumn:matching:value:'>
642
- <arg declared_type='NSFTableColumnType' type='i' name='theType' index='0'/>
643
- <arg declared_type='NSFMatchType' type='i' name='theMatch' index='1'/>
644
- <arg declared_type='NSString*' type='@' name='theValue' index='2'/>
645
- <retval declared_type='id' type='@'/>
705
+ <arg type='i' index='0' declared_type='NSFTableColumnType' name='theType'/>
706
+ <arg type='i' index='1' declared_type='NSFMatchType' name='theMatch'/>
707
+ <arg type='@' index='2' declared_type='NSString*' name='theValue'/>
708
+ <retval type='@' declared_type='id'/>
646
709
  </method>
647
710
  <method selector='match'>
648
- <retval declared_type='NSFMatchType' type='i'/>
711
+ <retval type='i' declared_type='NSFMatchType'/>
649
712
  </method>
650
- <method class_method='true' selector='predicateWithColumn:matching:value:'>
651
- <arg declared_type='NSFTableColumnType' type='i' name='theType' index='0'/>
652
- <arg declared_type='NSFMatchType' type='i' name='theMatch' index='1'/>
653
- <arg declared_type='NSString*' type='@' name='theValue' index='2'/>
654
- <retval declared_type='NSFNanoPredicate*' type='@'/>
713
+ <method selector='predicateWithColumn:matching:value:' class_method='true'>
714
+ <arg type='i' index='0' declared_type='NSFTableColumnType' name='theType'/>
715
+ <arg type='i' index='1' declared_type='NSFMatchType' name='theMatch'/>
716
+ <arg type='@' index='2' declared_type='NSString*' name='theValue'/>
717
+ <retval type='@' declared_type='NSFNanoPredicate*'/>
655
718
  </method>
656
719
  <method selector='value'>
657
- <retval declared_type='NSString*' type='@'/>
720
+ <retval type='@' declared_type='NSString*'/>
658
721
  </method>
659
722
  </class>
660
723
  <class name='NSFNanoResult'>
724
+ <method selector='JSONDescription'>
725
+ <retval type='@' declared_type='NSString*'/>
726
+ </method>
661
727
  <method selector='_calculateNumberOfRows'>
662
- <retval declared_type='void' type='v'/>
728
+ <retval type='v' declared_type='void'/>
663
729
  </method>
664
730
  <method selector='_initWithDictionary:'>
665
- <arg declared_type='NSDictionary*' type='@' name='results' index='0'/>
666
- <retval declared_type='id' type='@'/>
731
+ <arg type='@' index='0' declared_type='NSDictionary*' name='results'/>
732
+ <retval type='@' declared_type='id'/>
667
733
  </method>
668
734
  <method selector='_initWithError:'>
669
- <arg declared_type='NSError*' type='@' name='error' index='0'/>
670
- <retval declared_type='id' type='@'/>
735
+ <arg type='@' index='0' declared_type='NSError*' name='error'/>
736
+ <retval type='@' declared_type='id'/>
671
737
  </method>
672
738
  <method selector='_reset'>
673
- <retval declared_type='void' type='v'/>
739
+ <retval type='v' declared_type='void'/>
674
740
  </method>
675
- <method class_method='true' selector='_resultWithDictionary:'>
676
- <arg declared_type='NSDictionary*' type='@' name='results' index='0'/>
677
- <retval declared_type='NSFNanoResult*' type='@'/>
741
+ <method selector='_resultWithDictionary:' class_method='true'>
742
+ <arg type='@' index='0' declared_type='NSDictionary*' name='results'/>
743
+ <retval type='@' declared_type='NSFNanoResult*'/>
678
744
  </method>
679
- <method class_method='true' selector='_resultWithError:'>
680
- <arg declared_type='NSError*' type='@' name='error' index='0'/>
681
- <retval declared_type='NSFNanoResult*' type='@'/>
745
+ <method selector='_resultWithError:' class_method='true'>
746
+ <arg type='@' index='0' declared_type='NSError*' name='error'/>
747
+ <retval type='@' declared_type='NSFNanoResult*'/>
682
748
  </method>
683
749
  <method selector='_setError:'>
684
- <arg declared_type='NSError*' type='@' name='error' index='0'/>
685
- <retval declared_type='void' type='v'/>
750
+ <arg type='@' index='0' declared_type='NSError*' name='error'/>
751
+ <retval type='v' declared_type='void'/>
686
752
  </method>
687
753
  <method selector='columns'>
688
- <retval declared_type='NSArray*' type='@'/>
754
+ <retval type='@' declared_type='NSArray*'/>
689
755
  </method>
690
756
  <method selector='description'>
691
- <retval declared_type='NSString*' type='@'/>
757
+ <retval type='@' declared_type='NSString*'/>
692
758
  </method>
693
759
  <method selector='error'>
694
- <retval declared_type='NSError*' type='@'/>
760
+ <retval type='@' declared_type='NSError*'/>
695
761
  </method>
696
762
  <method selector='firstValue'>
697
- <retval declared_type='NSString*' type='@'/>
763
+ <retval type='@' declared_type='NSString*'/>
698
764
  </method>
699
765
  <method selector='numberOfRows'>
700
- <retval declared_type='NSUInteger' type='I'/>
766
+ <retval type='I' declared_type='NSUInteger'/>
701
767
  </method>
702
768
  <method selector='setError:'>
703
- <arg declared_type='NSError*' type='@' name='error' index='0'/>
704
- <retval declared_type='void' type='v'/>
769
+ <arg type='@' index='0' declared_type='NSError*' name='error'/>
770
+ <retval type='v' declared_type='void'/>
705
771
  </method>
706
772
  <method selector='valueAtIndex:forColumn:'>
707
- <arg declared_type='NSUInteger' type='I' name='theIndex' index='0'/>
708
- <arg declared_type='NSString*' type='@' name='theColumn' index='1'/>
709
- <retval declared_type='NSString*' type='@'/>
773
+ <arg type='I' index='0' declared_type='NSUInteger' name='theIndex'/>
774
+ <arg type='@' index='1' declared_type='NSString*' name='theColumn'/>
775
+ <retval type='@' declared_type='NSString*'/>
710
776
  </method>
711
777
  <method selector='valuesForColumn:'>
712
- <arg declared_type='NSString*' type='@' name='theColumn' index='0'/>
713
- <retval declared_type='NSArray*' type='@'/>
778
+ <arg type='@' index='0' declared_type='NSString*' name='theColumn'/>
779
+ <retval type='@' declared_type='NSArray*'/>
714
780
  </method>
715
781
  <method selector='writeToFile:'>
716
- <arg declared_type='NSString*' type='@' name='thePath' index='0'/>
717
- <retval declared_type='void' type='v'/>
782
+ <arg type='@' index='0' declared_type='NSString*' name='thePath'/>
783
+ <retval type='v' declared_type='void'/>
718
784
  </method>
719
785
  </class>
720
786
  <class name='NSFNanoSearch'>
787
+ <method selector='JSONDescription'>
788
+ <retval type='@' declared_type='NSString*'/>
789
+ </method>
721
790
  <method selector='_dataWithKey:attribute:value:matching:'>
722
- <arg declared_type='NSString*' type='@' name='aKey' index='0'/>
723
- <arg declared_type='NSString*' type='@' name='anAttribute' index='1'/>
724
- <arg declared_type='NSString*' type='@' name='aValue' index='2'/>
725
- <arg declared_type='NSFMatchType' type='i' name='match' index='3'/>
726
- <retval declared_type='NSArray*' type='@'/>
791
+ <arg type='@' index='0' declared_type='NSString*' name='aKey'/>
792
+ <arg type='@' index='1' declared_type='NSString*' name='anAttribute'/>
793
+ <arg type='@' index='2' declared_type='NSString*' name='aValue'/>
794
+ <arg type='i' index='3' declared_type='NSFMatchType' name='match'/>
795
+ <retval type='@' declared_type='NSArray*'/>
727
796
  </method>
728
797
  <method selector='_dataWithKey:attribute:value:matching:returning:'>
729
- <arg declared_type='NSString*' type='@' name='aKey' index='0'/>
730
- <arg declared_type='NSString*' type='@' name='anAttribute' index='1'/>
731
- <arg declared_type='NSString*' type='@' name='aValue' index='2'/>
732
- <arg declared_type='NSFMatchType' type='i' name='match' index='3'/>
733
- <arg declared_type='NSFReturnType' type='i' name='returnedObjectType' index='4'/>
734
- <retval declared_type='NSArray*' type='@'/>
798
+ <arg type='@' index='0' declared_type='NSString*' name='aKey'/>
799
+ <arg type='@' index='1' declared_type='NSString*' name='anAttribute'/>
800
+ <arg type='@' index='2' declared_type='NSString*' name='aValue'/>
801
+ <arg type='i' index='3' declared_type='NSFMatchType' name='match'/>
802
+ <arg type='i' index='4' declared_type='NSFReturnType' name='returnedObjectType'/>
803
+ <retval type='@' declared_type='NSArray*'/>
735
804
  </method>
736
805
  <method selector='_dictionaryForKeyPath:value:'>
737
- <arg declared_type='NSString*' type='@' name='keyPath' index='0'/>
738
- <arg declared_type='id' type='@' name='value' index='1'/>
739
- <retval declared_type='NSDictionary*' type='@'/>
806
+ <arg type='@' index='0' declared_type='NSString*' name='keyPath'/>
807
+ <arg type='@' index='1' declared_type='id' name='value'/>
808
+ <retval type='@' declared_type='NSDictionary*'/>
740
809
  </method>
741
810
  <method selector='_prepareSQLQueryStringWithExpressions:'>
742
- <arg declared_type='NSArray*' type='@' name='someExpressions' index='0'/>
743
- <retval declared_type='NSString*' type='@'/>
811
+ <arg type='@' index='0' declared_type='NSArray*' name='someExpressions'/>
812
+ <retval type='@' declared_type='NSString*'/>
744
813
  </method>
745
814
  <method selector='_prepareSQLQueryStringWithKey:attribute:value:matching:'>
746
- <arg declared_type='NSString*' type='@' name='aKey' index='0'/>
747
- <arg declared_type='NSString*' type='@' name='anAttribute' index='1'/>
748
- <arg declared_type='id' type='@' name='aValue' index='2'/>
749
- <arg declared_type='NSFMatchType' type='i' name='match' index='3'/>
750
- <retval declared_type='NSString*' type='@'/>
815
+ <arg type='@' index='0' declared_type='NSString*' name='aKey'/>
816
+ <arg type='@' index='1' declared_type='NSString*' name='anAttribute'/>
817
+ <arg type='@' index='2' declared_type='id' name='aValue'/>
818
+ <arg type='i' index='3' declared_type='NSFMatchType' name='match'/>
819
+ <retval type='@' declared_type='NSString*'/>
751
820
  </method>
752
- <method class_method='true' selector='_prepareSQLQueryStringWithKeys:'>
753
- <arg declared_type='NSArray*' type='@' name='someKeys' index='0'/>
754
- <retval declared_type='NSString*' type='@'/>
821
+ <method selector='_prepareSQLQueryStringWithKeys:' class_method='true'>
822
+ <arg type='@' index='0' declared_type='NSArray*' name='someKeys'/>
823
+ <retval type='@' declared_type='NSString*'/>
755
824
  </method>
756
825
  <method selector='_preparedSQL'>
757
- <retval declared_type='NSString*' type='@'/>
826
+ <retval type='@' declared_type='NSString*'/>
758
827
  </method>
759
- <method class_method='true' selector='_querySegmentForAttributeColumnWithValue:matching:valueColumnWithValue:'>
760
- <arg declared_type='id' type='@' name='anAttributeValue' index='0'/>
761
- <arg declared_type='NSFMatchType' type='i' name='match' index='1'/>
762
- <arg declared_type='id' type='@' name='aValue' index='2'/>
763
- <retval declared_type='NSString*' type='@'/>
828
+ <method selector='_querySegmentForAttributeColumnWithValue:matching:valueColumnWithValue:' class_method='true'>
829
+ <arg type='@' index='0' declared_type='id' name='anAttributeValue'/>
830
+ <arg type='i' index='1' declared_type='NSFMatchType' name='match'/>
831
+ <arg type='@' index='2' declared_type='id' name='aValue'/>
832
+ <retval type='@' declared_type='NSString*'/>
764
833
  </method>
765
- <method class_method='true' selector='_querySegmentForColumn:value:matching:'>
766
- <arg declared_type='NSString*' type='@' name='aColumn' index='0'/>
767
- <arg declared_type='id' type='@' name='aValue' index='1'/>
768
- <arg declared_type='NSFMatchType' type='i' name='match' index='2'/>
769
- <retval declared_type='NSString*' type='@'/>
834
+ <method selector='_querySegmentForColumn:value:matching:' class_method='true'>
835
+ <arg type='@' index='0' declared_type='NSString*' name='aColumn'/>
836
+ <arg type='@' index='1' declared_type='id' name='aValue'/>
837
+ <arg type='i' index='2' declared_type='NSFMatchType' name='match'/>
838
+ <retval type='@' declared_type='NSString*'/>
770
839
  </method>
771
- <method class_method='true' selector='_quoteStrings:joiningWithDelimiter:'>
772
- <arg declared_type='NSArray*' type='@' name='strings' index='0'/>
773
- <arg declared_type='NSString*' type='@' name='delimiter' index='1'/>
774
- <retval declared_type='NSString*' type='@'/>
840
+ <method selector='_quoteStrings:joiningWithDelimiter:' class_method='true'>
841
+ <arg type='@' index='0' declared_type='NSArray*' name='strings'/>
842
+ <arg type='@' index='1' declared_type='NSString*' name='delimiter'/>
843
+ <retval type='@' declared_type='NSString*'/>
775
844
  </method>
776
845
  <method selector='_resultsFromSQLQuery:'>
777
- <arg declared_type='NSString*' type='@' name='theSQLStatement' index='0'/>
778
- <retval declared_type='NSArray*' type='@'/>
846
+ <arg type='@' index='0' declared_type='NSString*' name='theSQLStatement'/>
847
+ <retval type='@' declared_type='NSArray*'/>
779
848
  </method>
780
849
  <method selector='_retrieveDataAdded:calendarDate:error:'>
781
- <arg declared_type='NSFDateMatchType' type='i' name='aDateMatch' index='0'/>
782
- <arg declared_type='NSDate*' type='@' name='aDate' index='1'/>
783
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='2'/>
784
- <retval declared_type='NSDictionary*' type='@'/>
850
+ <arg type='i' index='0' declared_type='NSFDateMatchType' name='aDateMatch'/>
851
+ <arg type='@' index='1' declared_type='NSDate*' name='aDate'/>
852
+ <arg type='^@' index='2' type_modifier='o' declared_type='NSError**' name='outError'/>
853
+ <retval type='@' declared_type='NSDictionary*'/>
785
854
  </method>
786
855
  <method selector='_retrieveDataWithError:'>
787
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
788
- <retval declared_type='NSDictionary*' type='@'/>
856
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
857
+ <retval type='@' declared_type='NSDictionary*'/>
789
858
  </method>
790
859
  <method selector='_sortResultsIfApplicable:returnType:'>
791
- <arg declared_type='NSDictionary*' type='@' name='results' index='0'/>
792
- <arg declared_type='NSFReturnType' type='i' name='theReturnType' index='1'/>
793
- <retval declared_type='id' type='@'/>
860
+ <arg type='@' index='0' declared_type='NSDictionary*' name='results'/>
861
+ <arg type='i' index='1' declared_type='NSFReturnType' name='theReturnType'/>
862
+ <retval type='@' declared_type='id'/>
794
863
  </method>
795
864
  <method selector='aggregateOperation:onAttribute:'>
796
- <arg declared_type='NSFAggregateFunctionType' type='i' name='theFunctionType' index='0'/>
797
- <arg declared_type='NSString*' type='@' name='theAttribute' index='1'/>
798
- <retval declared_type='NSNumber*' type='@'/>
865
+ <arg type='i' index='0' declared_type='NSFAggregateFunctionType' name='theFunctionType'/>
866
+ <arg type='@' index='1' declared_type='NSString*' name='theAttribute'/>
867
+ <retval type='@' declared_type='NSNumber*'/>
799
868
  </method>
800
869
  <method selector='attribute'>
801
- <retval declared_type='NSString*' type='@'/>
870
+ <retval type='@' declared_type='NSString*'/>
802
871
  </method>
803
872
  <method selector='attributesToBeReturned'>
804
- <retval declared_type='NSArray*' type='@'/>
873
+ <retval type='@' declared_type='NSArray*'/>
874
+ </method>
875
+ <method selector='description'>
876
+ <retval type='@' declared_type='NSString*'/>
805
877
  </method>
806
878
  <method selector='executeSQL:'>
807
- <arg declared_type='NSString*' type='@' name='theSQLStatement' index='0'/>
808
- <retval declared_type='NSFNanoResult*' type='@'/>
879
+ <arg type='@' index='0' declared_type='NSString*' name='theSQLStatement'/>
880
+ <retval type='@' declared_type='NSFNanoResult*'/>
809
881
  </method>
810
882
  <method selector='executeSQL:returnType:error:'>
811
- <arg declared_type='NSString*' type='@' name='theSQLStatement' index='0'/>
812
- <arg declared_type='NSFReturnType' type='i' name='theReturnType' index='1'/>
813
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='2'/>
814
- <retval declared_type='id' type='@'/>
883
+ <arg type='@' index='0' declared_type='NSString*' name='theSQLStatement'/>
884
+ <arg type='i' index='1' declared_type='NSFReturnType' name='theReturnType'/>
885
+ <arg type='^@' index='2' type_modifier='o' declared_type='NSError**' name='outError'/>
886
+ <retval type='@' declared_type='id'/>
815
887
  </method>
816
888
  <method selector='explainSQL:'>
817
- <arg declared_type='NSString*' type='@' name='theSQLStatement' index='0'/>
818
- <retval declared_type='NSFNanoResult*' type='@'/>
889
+ <arg type='@' index='0' declared_type='NSString*' name='theSQLStatement'/>
890
+ <retval type='@' declared_type='NSFNanoResult*'/>
819
891
  </method>
820
892
  <method selector='expressions'>
821
- <retval declared_type='NSArray*' type='@'/>
893
+ <retval type='@' declared_type='NSArray*'/>
822
894
  </method>
823
895
  <method selector='filterClass'>
824
- <retval declared_type='NSString*' type='@'/>
896
+ <retval type='@' declared_type='NSString*'/>
825
897
  </method>
826
898
  <method selector='groupValues'>
827
- <retval declared_type='BOOL' type='B'/>
899
+ <retval type='B' declared_type='BOOL'/>
828
900
  </method>
829
901
  <method selector='initWithStore:'>
830
- <arg declared_type='NSFNanoStore*' type='@' name='theNanoStore' index='0'/>
831
- <retval declared_type='id' type='@'/>
902
+ <arg type='@' index='0' declared_type='NSFNanoStore*' name='theNanoStore'/>
903
+ <retval type='@' declared_type='id'/>
832
904
  </method>
833
905
  <method selector='key'>
834
- <retval declared_type='NSString*' type='@'/>
906
+ <retval type='@' declared_type='NSString*'/>
907
+ </method>
908
+ <method selector='limit'>
909
+ <retval type='I' declared_type='NSUInteger'/>
835
910
  </method>
836
911
  <method selector='match'>
837
- <retval declared_type='NSFMatchType' type='i'/>
912
+ <retval type='i' declared_type='NSFMatchType'/>
838
913
  </method>
839
914
  <method selector='nanoStore'>
840
- <retval declared_type='NSFNanoStore*' type='@'/>
915
+ <retval type='@' declared_type='NSFNanoStore*'/>
916
+ </method>
917
+ <method selector='offset'>
918
+ <retval type='I' declared_type='NSUInteger'/>
841
919
  </method>
842
920
  <method selector='reset'>
843
- <retval declared_type='void' type='v'/>
921
+ <retval type='v' declared_type='void'/>
844
922
  </method>
845
923
  <method selector='searchObjectsAdded:date:returnType:error:'>
846
- <arg declared_type='NSFDateMatchType' type='i' name='theDateMatch' index='0'/>
847
- <arg declared_type='NSDate*' type='@' name='theDate' index='1'/>
848
- <arg declared_type='NSFReturnType' type='i' name='theReturnType' index='2'/>
849
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='3'/>
850
- <retval declared_type='id' type='@'/>
924
+ <arg type='i' index='0' declared_type='NSFDateMatchType' name='theDateMatch'/>
925
+ <arg type='@' index='1' declared_type='NSDate*' name='theDate'/>
926
+ <arg type='i' index='2' declared_type='NSFReturnType' name='theReturnType'/>
927
+ <arg type='^@' index='3' type_modifier='o' declared_type='NSError**' name='outError'/>
928
+ <retval type='@' declared_type='id'/>
851
929
  </method>
852
930
  <method selector='searchObjectsWithReturnType:error:'>
853
- <arg declared_type='NSFReturnType' type='i' name='theReturnType' index='0'/>
854
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='1'/>
855
- <retval declared_type='id' type='@'/>
931
+ <arg type='i' index='0' declared_type='NSFReturnType' name='theReturnType'/>
932
+ <arg type='^@' index='1' type_modifier='o' declared_type='NSError**' name='outError'/>
933
+ <retval type='@' declared_type='id'/>
856
934
  </method>
857
- <method class_method='true' selector='searchWithStore:'>
858
- <arg declared_type='NSFNanoStore*' type='@' name='theNanoStore' index='0'/>
859
- <retval declared_type='NSFNanoSearch*' type='@'/>
935
+ <method selector='searchWithStore:' class_method='true'>
936
+ <arg type='@' index='0' declared_type='NSFNanoStore*' name='theNanoStore'/>
937
+ <retval type='@' declared_type='NSFNanoSearch*'/>
860
938
  </method>
861
939
  <method selector='setAttribute:'>
862
- <arg declared_type='NSString*' type='@' name='attribute' index='0'/>
863
- <retval declared_type='void' type='v'/>
940
+ <arg type='@' index='0' declared_type='NSString*' name='attribute'/>
941
+ <retval type='v' declared_type='void'/>
864
942
  </method>
865
943
  <method selector='setAttributesToBeReturned:'>
866
- <arg declared_type='NSArray*' type='@' name='attributesToBeReturned' index='0'/>
867
- <retval declared_type='void' type='v'/>
944
+ <arg type='@' index='0' declared_type='NSArray*' name='attributesToBeReturned'/>
945
+ <retval type='v' declared_type='void'/>
868
946
  </method>
869
947
  <method selector='setExpressions:'>
870
- <arg declared_type='NSArray*' type='@' name='expressions' index='0'/>
871
- <retval declared_type='void' type='v'/>
948
+ <arg type='@' index='0' declared_type='NSArray*' name='expressions'/>
949
+ <retval type='v' declared_type='void'/>
872
950
  </method>
873
951
  <method selector='setFilterClass:'>
874
- <arg declared_type='NSString*' type='@' name='filterClass' index='0'/>
875
- <retval declared_type='void' type='v'/>
952
+ <arg type='@' index='0' declared_type='NSString*' name='filterClass'/>
953
+ <retval type='v' declared_type='void'/>
876
954
  </method>
877
955
  <method selector='setGroupValues:'>
878
- <arg declared_type='BOOL' type='B' name='groupValues' index='0'/>
879
- <retval declared_type='void' type='v'/>
956
+ <arg type='B' index='0' declared_type='BOOL' name='groupValues'/>
957
+ <retval type='v' declared_type='void'/>
880
958
  </method>
881
959
  <method selector='setKey:'>
882
- <arg declared_type='NSString*' type='@' name='key' index='0'/>
883
- <retval declared_type='void' type='v'/>
960
+ <arg type='@' index='0' declared_type='NSString*' name='key'/>
961
+ <retval type='v' declared_type='void'/>
962
+ </method>
963
+ <method selector='setLimit:'>
964
+ <arg type='I' index='0' declared_type='NSUInteger' name='limit'/>
965
+ <retval type='v' declared_type='void'/>
884
966
  </method>
885
967
  <method selector='setMatch:'>
886
- <arg declared_type='NSFMatchType' type='i' name='match' index='0'/>
887
- <retval declared_type='void' type='v'/>
968
+ <arg type='i' index='0' declared_type='NSFMatchType' name='match'/>
969
+ <retval type='v' declared_type='void'/>
888
970
  </method>
889
971
  <method selector='setNanoStore:'>
890
- <arg declared_type='NSFNanoStore*' type='@' name='nanoStore' index='0'/>
891
- <retval declared_type='void' type='v'/>
972
+ <arg type='@' index='0' declared_type='NSFNanoStore*' name='nanoStore'/>
973
+ <retval type='v' declared_type='void'/>
974
+ </method>
975
+ <method selector='setOffset:'>
976
+ <arg type='I' index='0' declared_type='NSUInteger' name='offset'/>
977
+ <retval type='v' declared_type='void'/>
892
978
  </method>
893
979
  <method selector='setSort:'>
894
- <arg declared_type='NSArray*' type='@' name='sort' index='0'/>
895
- <retval declared_type='void' type='v'/>
980
+ <arg type='@' index='0' declared_type='NSArray*' name='sort'/>
981
+ <retval type='v' declared_type='void'/>
896
982
  </method>
897
983
  <method selector='setValue:'>
898
- <arg declared_type='id' type='@' name='value' index='0'/>
899
- <retval declared_type='void' type='v'/>
984
+ <arg type='@' index='0' declared_type='id' name='value'/>
985
+ <retval type='v' declared_type='void'/>
900
986
  </method>
901
987
  <method selector='sort'>
902
- <retval declared_type='NSArray*' type='@'/>
988
+ <retval type='@' declared_type='NSArray*'/>
903
989
  </method>
904
990
  <method selector='sql'>
905
- <retval declared_type='NSString*' type='@'/>
991
+ <retval type='@' declared_type='NSString*'/>
906
992
  </method>
907
993
  <method selector='value'>
908
- <retval declared_type='id' type='@'/>
994
+ <retval type='@' declared_type='id'/>
909
995
  </method>
910
996
  </class>
911
997
  <class name='NSFNanoSortDescriptor'>
998
+ <method selector='JSONDescription'>
999
+ <retval type='@' declared_type='NSString*'/>
1000
+ </method>
912
1001
  <method selector='attribute'>
913
- <retval declared_type='NSString*' type='@'/>
1002
+ <retval type='@' declared_type='NSString*'/>
914
1003
  </method>
915
1004
  <method selector='description'>
916
- <retval declared_type='NSString*' type='@'/>
1005
+ <retval type='@' declared_type='NSString*'/>
917
1006
  </method>
918
1007
  <method selector='initWithAttribute:ascending:'>
919
- <arg declared_type='NSString*' type='@' name='theAttribute' index='0'/>
920
- <arg declared_type='BOOL' type='B' name='ascending' index='1'/>
921
- <retval declared_type='id' type='@'/>
1008
+ <arg type='@' index='0' declared_type='NSString*' name='theAttribute'/>
1009
+ <arg type='B' index='1' declared_type='BOOL' name='ascending'/>
1010
+ <retval type='@' declared_type='id'/>
922
1011
  </method>
923
1012
  <method selector='isAscending'>
924
- <retval declared_type='BOOL' type='B'/>
1013
+ <retval type='B' declared_type='BOOL'/>
925
1014
  </method>
926
- <method class_method='true' selector='sortDescriptorWithAttribute:ascending:'>
927
- <arg declared_type='NSString*' type='@' name='theAttribute' index='0'/>
928
- <arg declared_type='BOOL' type='B' name='ascending' index='1'/>
929
- <retval declared_type='NSFNanoSortDescriptor*' type='@'/>
1015
+ <method selector='sortDescriptorWithAttribute:ascending:' class_method='true'>
1016
+ <arg type='@' index='0' declared_type='NSString*' name='theAttribute'/>
1017
+ <arg type='B' index='1' declared_type='BOOL' name='ascending'/>
1018
+ <retval type='@' declared_type='NSFNanoSortDescriptor*'/>
930
1019
  </method>
931
1020
  </class>
932
1021
  <class name='NSFNanoStore'>
1022
+ <method selector='JSONDescription'>
1023
+ <retval type='@' declared_type='NSString*'/>
1024
+ </method>
933
1025
  <method selector='_NSFDatatypeOfObject:'>
934
- <arg declared_type='id' type='@' name='value' index='0'/>
935
- <retval declared_type='NSFNanoDatatype' type='i'/>
1026
+ <arg type='@' index='0' declared_type='id' name='value'/>
1027
+ <retval type='i' declared_type='NSFNanoDatatype'/>
936
1028
  </method>
937
1029
  <method selector='__storeDictionaries:forKeys:error:'>
938
- <arg declared_type='NSArray*' type='@' name='someObjects' index='0'/>
939
- <arg declared_type='NSArray*' type='@' name='someKeys' index='1'/>
940
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='2'/>
941
- <retval declared_type='BOOL' type='B'/>
1030
+ <arg type='@' index='0' declared_type='NSArray*' name='someObjects'/>
1031
+ <arg type='@' index='1' declared_type='NSArray*' name='someKeys'/>
1032
+ <arg type='^@' index='2' type_modifier='o' declared_type='NSError**' name='outError'/>
1033
+ <retval type='B' declared_type='BOOL'/>
942
1034
  </method>
943
1035
  <method selector='_addObjectsFromArray:forceSave:error:'>
944
- <arg declared_type='NSArray*' type='@' name='someObjects' index='0'/>
945
- <arg declared_type='BOOL' type='B' name='forceSave' index='1'/>
946
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='2'/>
947
- <retval declared_type='BOOL' type='B'/>
1036
+ <arg type='@' index='0' declared_type='NSArray*' name='someObjects'/>
1037
+ <arg type='B' index='1' declared_type='BOOL' name='forceSave'/>
1038
+ <arg type='^@' index='2' type_modifier='o' declared_type='NSError**' name='outError'/>
1039
+ <retval type='B' declared_type='BOOL'/>
948
1040
  </method>
949
1041
  <method selector='_backupFileStoreToDirectoryAtPath:extension:compact:error:'>
950
- <arg declared_type='NSString*' type='@' name='aPath' index='0'/>
951
- <arg declared_type='NSString*' type='@' name='anExtension' index='1'/>
952
- <arg declared_type='BOOL' type='B' name='flag' index='2'/>
953
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='3'/>
954
- <retval declared_type='BOOL' type='B'/>
1042
+ <arg type='@' index='0' declared_type='NSString*' name='aPath'/>
1043
+ <arg type='@' index='1' declared_type='NSString*' name='anExtension'/>
1044
+ <arg type='B' index='2' declared_type='BOOL' name='flag'/>
1045
+ <arg type='^@' index='3' type_modifier='o' declared_type='NSError**' name='outError'/>
1046
+ <retval type='B' declared_type='BOOL'/>
955
1047
  </method>
956
1048
  <method selector='_backupMemoryStoreToDirectoryAtPath:extension:compact:error:'>
957
- <arg declared_type='NSString*' type='@' name='aPath' index='0'/>
958
- <arg declared_type='NSString*' type='@' name='anExtension' index='1'/>
959
- <arg declared_type='BOOL' type='B' name='flag' index='2'/>
960
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='3'/>
961
- <retval declared_type='BOOL' type='B'/>
1049
+ <arg type='@' index='0' declared_type='NSString*' name='aPath'/>
1050
+ <arg type='@' index='1' declared_type='NSString*' name='anExtension'/>
1051
+ <arg type='B' index='2' declared_type='BOOL' name='flag'/>
1052
+ <arg type='^@' index='3' type_modifier='o' declared_type='NSError**' name='outError'/>
1053
+ <retval type='B' declared_type='BOOL'/>
962
1054
  </method>
963
1055
  <method selector='_bindValue:forAttribute:parameterNumber:usingSQLite3Statement:'>
964
- <arg declared_type='id' type='@' name='aValue' index='0'/>
965
- <arg declared_type='NSString*' type='@' name='anAttribute' index='1'/>
966
- <arg declared_type='NSInteger' type='i' name='aParamNumber' index='2'/>
967
- <arg declared_type='sqlite3_stmt*' type='^{sqlite3_stmt=}' name='aStatement' index='3'/>
968
- <retval declared_type='BOOL' type='B'/>
1056
+ <arg type='@' index='0' declared_type='id' name='aValue'/>
1057
+ <arg type='@' index='1' declared_type='NSString*' name='anAttribute'/>
1058
+ <arg type='i' index='2' declared_type='NSInteger' name='aParamNumber'/>
1059
+ <arg type='^{sqlite3_stmt=}' index='3' declared_type='sqlite3_stmt*' name='aStatement'/>
1060
+ <retval type='B' declared_type='BOOL'/>
969
1061
  </method>
970
- <method class_method='true' selector='_calendarDateToString:'>
971
- <arg declared_type='NSDate*' type='@' name='aDate' index='0'/>
972
- <retval declared_type='NSString*' type='@'/>
1062
+ <method selector='_calendarDateToString:' class_method='true'>
1063
+ <arg type='@' index='0' declared_type='NSDate*' name='aDate'/>
1064
+ <retval type='@' declared_type='NSString*'/>
973
1065
  </method>
974
1066
  <method selector='_checkNanoStoreIsReadyAndReturnError:'>
975
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
976
- <retval declared_type='BOOL' type='B'/>
1067
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
1068
+ <retval type='B' declared_type='BOOL'/>
977
1069
  </method>
978
- <method class_method='true' selector='_createAndOpenDebugDatabase'>
979
- <retval declared_type='NSFNanoStore*' type='@'/>
1070
+ <method selector='_createAndOpenDebugDatabase' class_method='true'>
1071
+ <retval type='@' declared_type='NSFNanoStore*'/>
980
1072
  </method>
981
- <method class_method='true' selector='_defaultTestData'>
982
- <retval declared_type='NSDictionary*' type='@'/>
1073
+ <method selector='_defaultTestData' class_method='true'>
1074
+ <retval type='@' declared_type='NSDictionary*'/>
983
1075
  </method>
984
1076
  <method selector='_executeSQL:'>
985
- <arg declared_type='NSString*' type='@' name='theSQLStatement' index='0'/>
986
- <retval declared_type='NSFNanoResult*' type='@'/>
1077
+ <arg type='@' index='0' declared_type='NSString*' name='theSQLStatement'/>
1078
+ <retval type='@' declared_type='NSFNanoResult*'/>
987
1079
  </method>
988
1080
  <method selector='_executeSQLite3StepUsingSQLite3Statement:'>
989
- <arg declared_type='sqlite3_stmt*' type='^{sqlite3_stmt=}' name='aStatement' index='0'/>
990
- <retval declared_type='void' type='v'/>
1081
+ <arg type='^{sqlite3_stmt=}' index='0' declared_type='sqlite3_stmt*' name='aStatement'/>
1082
+ <retval type='v' declared_type='void'/>
991
1083
  </method>
992
1084
  <method selector='_flattenCollection:keyPath:keys:values:'>
993
- <arg declared_type='id' type='@' name='someObject' index='0'/>
994
- <arg declared_type='NSMutableArray**' type='^@' name='aKeyPath' index='1'/>
995
- <arg declared_type='NSMutableArray**' type='^@' name='someKeys' index='2'/>
996
- <arg declared_type='NSMutableArray**' type='^@' name='someValues' index='3'/>
997
- <retval declared_type='void' type='v'/>
1085
+ <arg type='@' index='0' declared_type='id' name='someObject'/>
1086
+ <arg type='^@' index='1' declared_type='NSMutableArray**' name='aKeyPath'/>
1087
+ <arg type='^@' index='2' declared_type='NSMutableArray**' name='someKeys'/>
1088
+ <arg type='^@' index='3' declared_type='NSMutableArray**' name='someValues'/>
1089
+ <retval type='v' declared_type='void'/>
998
1090
  </method>
999
1091
  <method selector='_flattenCollection:keys:values:'>
1000
- <arg declared_type='NSDictionary*' type='@' name='info' index='0'/>
1001
- <arg declared_type='NSMutableArray**' type='^@' name='flattenedKeys' index='1'/>
1002
- <arg declared_type='NSMutableArray**' type='^@' name='flattenedValues' index='2'/>
1003
- <retval declared_type='void' type='v'/>
1092
+ <arg type='@' index='0' declared_type='NSDictionary*' name='info'/>
1093
+ <arg type='^@' index='1' declared_type='NSMutableArray**' name='flattenedKeys'/>
1094
+ <arg type='^@' index='2' declared_type='NSMutableArray**' name='flattenedValues'/>
1095
+ <retval type='v' declared_type='void'/>
1004
1096
  </method>
1005
1097
  <method selector='_initializePreparedStatementsWithError:'>
1006
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
1007
- <retval declared_type='BOOL' type='B'/>
1098
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
1099
+ <retval type='B' declared_type='BOOL'/>
1008
1100
  </method>
1009
1101
  <method selector='_isOurTransaction'>
1010
- <retval declared_type='BOOL' type='B'/>
1102
+ <retval type='B' declared_type='BOOL'/>
1011
1103
  </method>
1012
1104
  <method selector='_nestedDescriptionWithPrefixedSpace:'>
1013
- <arg declared_type='NSString*' type='@' name='prefixedSpace' index='0'/>
1014
- <retval declared_type='NSString*' type='@'/>
1105
+ <arg type='@' index='0' declared_type='NSString*' name='prefixedSpace'/>
1106
+ <retval type='@' declared_type='NSString*'/>
1015
1107
  </method>
1016
1108
  <method selector='_prepareSQLite3Statement:theSQLStatement:'>
1017
- <arg declared_type='sqlite3_stmt**' type='^^{sqlite3_stmt}' name='aStatement' index='0'/>
1018
- <arg declared_type='NSString*' type='@' name='aSQLQuery' index='1'/>
1019
- <retval declared_type='BOOL' type='B'/>
1109
+ <arg type='^^{sqlite3_stmt}' index='0' declared_type='sqlite3_stmt**' name='aStatement'/>
1110
+ <arg type='@' index='1' declared_type='NSString*' name='aSQLQuery'/>
1111
+ <retval type='B' declared_type='BOOL'/>
1020
1112
  </method>
1021
1113
  <method selector='_releasePreparedStatements'>
1022
- <retval declared_type='void' type='v'/>
1114
+ <retval type='v' declared_type='void'/>
1023
1115
  </method>
1024
1116
  <method selector='_setIsOurTransaction:'>
1025
- <arg declared_type='BOOL' type='B' name='value' index='0'/>
1026
- <retval declared_type='void' type='v'/>
1117
+ <arg type='B' index='0' declared_type='BOOL' name='value'/>
1118
+ <retval type='v' declared_type='void'/>
1027
1119
  </method>
1028
1120
  <method selector='_setupCachingSchema'>
1029
- <retval declared_type='BOOL' type='B'/>
1121
+ <retval type='B' declared_type='BOOL'/>
1030
1122
  </method>
1031
- <method selector='_storeDictionary:forKey:forClassNamed:usingSQLite3Statement:error:'>
1032
- <arg declared_type='NSDictionary*' type='@' name='someInfo' index='0'/>
1033
- <arg declared_type='NSString*' type='@' name='aKey' index='1'/>
1034
- <arg declared_type='NSString*' type='@' name='classType' index='2'/>
1035
- <arg declared_type='sqlite3_stmt*' type='^{sqlite3_stmt=}' name='storeValuesStatement' index='3'/>
1036
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='4'/>
1037
- <retval declared_type='BOOL' type='B'/>
1123
+ <method selector='_storeDictionary:forKey:forClassNamed:error:'>
1124
+ <arg type='@' index='0' declared_type='NSDictionary*' name='someInfo'/>
1125
+ <arg type='@' index='1' declared_type='NSString*' name='aKey'/>
1126
+ <arg type='@' index='2' declared_type='NSString*' name='classType'/>
1127
+ <arg type='^@' index='3' type_modifier='o' declared_type='NSError**' name='outError'/>
1128
+ <retval type='B' declared_type='BOOL'/>
1038
1129
  </method>
1039
1130
  <method selector='_stringFromValue:'>
1040
- <arg declared_type='id' type='@' name='aValue' index='0'/>
1041
- <retval declared_type='NSString*' type='@'/>
1131
+ <arg type='@' index='0' declared_type='id' name='aValue'/>
1132
+ <retval type='@' declared_type='NSString*'/>
1042
1133
  </method>
1043
1134
  <method selector='addObject:error:'>
1044
- <arg declared_type='id' type='@' name='theObject' index='0'/>
1045
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='1'/>
1046
- <retval declared_type='BOOL' type='B'/>
1135
+ <arg type='@' index='0' declared_type='id' name='theObject'/>
1136
+ <arg type='^@' index='1' type_modifier='o' declared_type='NSError**' name='outError'/>
1137
+ <retval type='B' declared_type='BOOL'/>
1047
1138
  </method>
1048
1139
  <method selector='addObjectsFromArray:error:'>
1049
- <arg declared_type='NSArray*' type='@' name='theObjects' index='0'/>
1050
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='1'/>
1051
- <retval declared_type='BOOL' type='B'/>
1140
+ <arg type='@' index='0' declared_type='NSArray*' name='theObjects'/>
1141
+ <arg type='^@' index='1' type_modifier='o' declared_type='NSError**' name='outError'/>
1142
+ <retval type='B' declared_type='BOOL'/>
1052
1143
  </method>
1053
1144
  <method selector='allObjectClasses'>
1054
- <retval declared_type='NSArray*' type='@'/>
1145
+ <retval type='@' declared_type='NSArray*'/>
1055
1146
  </method>
1056
1147
  <method selector='bagWithName:'>
1057
- <arg declared_type='NSString*' type='@' name='theName' index='0'/>
1058
- <retval declared_type='NSFNanoBag*' type='@'/>
1148
+ <arg type='@' index='0' declared_type='NSString*' name='theName'/>
1149
+ <retval type='@' declared_type='NSFNanoBag*'/>
1059
1150
  </method>
1060
1151
  <method selector='bags'>
1061
- <retval declared_type='NSArray*' type='@'/>
1152
+ <retval type='@' declared_type='NSArray*'/>
1062
1153
  </method>
1063
1154
  <method selector='bagsContainingObjectWithKey:'>
1064
- <arg declared_type='NSString*' type='@' name='theKey' index='0'/>
1065
- <retval declared_type='NSArray*' type='@'/>
1155
+ <arg type='@' index='0' declared_type='NSString*' name='theKey'/>
1156
+ <retval type='@' declared_type='NSArray*'/>
1066
1157
  </method>
1067
1158
  <method selector='bagsWithKeysInArray:'>
1068
- <arg declared_type='NSArray*' type='@' name='theKeys' index='0'/>
1069
- <retval declared_type='NSArray*' type='@'/>
1159
+ <arg type='@' index='0' declared_type='NSArray*' name='theKeys'/>
1160
+ <retval type='@' declared_type='NSArray*'/>
1161
+ </method>
1162
+ <method selector='bagsWithName:'>
1163
+ <arg type='@' index='0' declared_type='NSString*' name='theName'/>
1164
+ <retval type='@' declared_type='NSArray*'/>
1070
1165
  </method>
1071
1166
  <method selector='beginTransactionAndReturnError:'>
1072
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
1073
- <retval declared_type='BOOL' type='B'/>
1167
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
1168
+ <retval type='B' declared_type='BOOL'/>
1074
1169
  </method>
1075
1170
  <method selector='clearIndexesAndReturnError:'>
1076
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
1077
- <retval declared_type='BOOL' type='B'/>
1171
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
1172
+ <retval type='B' declared_type='BOOL'/>
1078
1173
  </method>
1079
1174
  <method selector='closeWithError:'>
1080
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
1081
- <retval declared_type='BOOL' type='B'/>
1175
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
1176
+ <retval type='B' declared_type='BOOL'/>
1082
1177
  </method>
1083
1178
  <method selector='commitTransactionAndReturnError:'>
1084
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
1085
- <retval declared_type='BOOL' type='B'/>
1179
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
1180
+ <retval type='B' declared_type='BOOL'/>
1086
1181
  </method>
1087
1182
  <method selector='compactStoreAndReturnError:'>
1088
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
1089
- <retval declared_type='BOOL' type='B'/>
1183
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
1184
+ <retval type='B' declared_type='BOOL'/>
1090
1185
  </method>
1091
1186
  <method selector='countOfObjectsOfClassNamed:'>
1092
- <arg declared_type='NSString*' type='@' name='theClassName' index='0'/>
1093
- <retval declared_type='long long' type='q'/>
1187
+ <arg type='@' index='0' declared_type='NSString*' name='theClassName'/>
1188
+ <retval type='q' declared_type='long long'/>
1094
1189
  </method>
1095
- <method class_method='true' selector='createAndOpenStoreWithType:path:error:'>
1096
- <arg declared_type='NSFNanoStoreType' type='i' name='theType' index='0'/>
1097
- <arg declared_type='NSString*' type='@' name='thePath' index='1'/>
1098
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='2'/>
1099
- <retval declared_type='NSFNanoStore*' type='@'/>
1190
+ <method selector='createAndOpenStoreWithType:path:error:' class_method='true'>
1191
+ <arg type='i' index='0' declared_type='NSFNanoStoreType' name='theType'/>
1192
+ <arg type='@' index='1' declared_type='NSString*' name='thePath'/>
1193
+ <arg type='^@' index='2' type_modifier='o' declared_type='NSError**' name='outError'/>
1194
+ <retval type='@' declared_type='NSFNanoStore*'/>
1100
1195
  </method>
1101
- <method class_method='true' selector='createStoreWithType:path:'>
1102
- <arg declared_type='NSFNanoStoreType' type='i' name='theType' index='0'/>
1103
- <arg declared_type='NSString*' type='@' name='thePath' index='1'/>
1104
- <retval declared_type='NSFNanoStore*' type='@'/>
1196
+ <method selector='createStoreWithType:path:' class_method='true'>
1197
+ <arg type='i' index='0' declared_type='NSFNanoStoreType' name='theType'/>
1198
+ <arg type='@' index='1' declared_type='NSString*' name='thePath'/>
1199
+ <retval type='@' declared_type='NSFNanoStore*'/>
1105
1200
  </method>
1106
1201
  <method selector='description'>
1107
- <retval declared_type='NSString*' type='@'/>
1202
+ <retval type='@' declared_type='NSString*'/>
1203
+ </method>
1204
+ <method selector='dictionaryDescription'>
1205
+ <retval type='@' declared_type='NSFOrderedDictionary*'/>
1108
1206
  </method>
1109
1207
  <method selector='discardUnsavedChanges'>
1110
- <retval declared_type='void' type='v'/>
1208
+ <retval type='v' declared_type='void'/>
1111
1209
  </method>
1112
1210
  <method selector='filePath'>
1113
- <retval declared_type='NSString*' type='@'/>
1211
+ <retval type='@' declared_type='NSString*'/>
1114
1212
  </method>
1115
1213
  <method selector='hasUnsavedChanges'>
1116
- <retval declared_type='BOOL' type='B'/>
1214
+ <retval type='B' declared_type='BOOL'/>
1117
1215
  </method>
1118
1216
  <method selector='initStoreWithType:path:'>
1119
- <arg declared_type='NSFNanoStoreType' type='i' name='theType' index='0'/>
1120
- <arg declared_type='NSString*' type='@' name='thePath' index='1'/>
1121
- <retval declared_type='id' type='@'/>
1217
+ <arg type='i' index='0' declared_type='NSFNanoStoreType' name='theType'/>
1218
+ <arg type='@' index='1' declared_type='NSString*' name='thePath'/>
1219
+ <retval type='@' declared_type='id'/>
1122
1220
  </method>
1123
1221
  <method selector='isClosed'>
1124
- <retval declared_type='BOOL' type='B'/>
1222
+ <retval type='B' declared_type='BOOL'/>
1125
1223
  </method>
1126
1224
  <method selector='nanoEngineProcessingMode'>
1127
- <retval declared_type='NSFEngineProcessingMode' type='i'/>
1225
+ <retval type='i' declared_type='NSFEngineProcessingMode'/>
1128
1226
  </method>
1129
1227
  <method selector='nanoStoreEngine'>
1130
- <retval declared_type='NSFNanoEngine*' type='@'/>
1228
+ <retval type='@' declared_type='NSFNanoEngine*'/>
1131
1229
  </method>
1132
1230
  <method selector='objectsOfClassNamed:'>
1133
- <arg declared_type='NSString*' type='@' name='theClassName' index='0'/>
1134
- <retval declared_type='NSArray*' type='@'/>
1231
+ <arg type='@' index='0' declared_type='NSString*' name='theClassName'/>
1232
+ <retval type='@' declared_type='NSArray*'/>
1135
1233
  </method>
1136
1234
  <method selector='objectsOfClassNamed:usingSortDescriptors:'>
1137
- <arg declared_type='NSString*' type='@' name='theClassName' index='0'/>
1138
- <arg declared_type='NSArray*' type='@' name='theSortDescriptors' index='1'/>
1139
- <retval declared_type='NSArray*' type='@'/>
1235
+ <arg type='@' index='0' declared_type='NSString*' name='theClassName'/>
1236
+ <arg type='@' index='1' declared_type='NSArray*' name='theSortDescriptors'/>
1237
+ <retval type='@' declared_type='NSArray*'/>
1140
1238
  </method>
1141
1239
  <method selector='objectsWithKeysInArray:'>
1142
- <arg declared_type='NSArray*' type='@' name='theKeys' index='0'/>
1143
- <retval declared_type='NSArray*' type='@'/>
1240
+ <arg type='@' index='0' declared_type='NSArray*' name='theKeys'/>
1241
+ <retval type='@' declared_type='NSArray*'/>
1144
1242
  </method>
1145
1243
  <method selector='openWithError:'>
1146
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
1147
- <retval declared_type='BOOL' type='B'/>
1244
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
1245
+ <retval type='B' declared_type='BOOL'/>
1148
1246
  </method>
1149
1247
  <method selector='rebuildIndexesAndReturnError:'>
1150
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
1151
- <retval declared_type='BOOL' type='B'/>
1248
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
1249
+ <retval type='B' declared_type='BOOL'/>
1152
1250
  </method>
1153
1251
  <method selector='removeAllObjectsFromStoreAndReturnError:'>
1154
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
1155
- <retval declared_type='BOOL' type='B'/>
1252
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
1253
+ <retval type='B' declared_type='BOOL'/>
1156
1254
  </method>
1157
1255
  <method selector='removeObject:error:'>
1158
- <arg declared_type='id' type='@' name='theObject' index='0'/>
1159
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='1'/>
1160
- <retval declared_type='BOOL' type='B'/>
1256
+ <arg type='@' index='0' declared_type='id' name='theObject'/>
1257
+ <arg type='^@' index='1' type_modifier='o' declared_type='NSError**' name='outError'/>
1258
+ <retval type='B' declared_type='BOOL'/>
1161
1259
  </method>
1162
1260
  <method selector='removeObjectsInArray:error:'>
1163
- <arg declared_type='NSArray*' type='@' name='theObjects' index='0'/>
1164
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='1'/>
1165
- <retval declared_type='BOOL' type='B'/>
1261
+ <arg type='@' index='0' declared_type='NSArray*' name='theObjects'/>
1262
+ <arg type='^@' index='1' type_modifier='o' declared_type='NSError**' name='outError'/>
1263
+ <retval type='B' declared_type='BOOL'/>
1166
1264
  </method>
1167
1265
  <method selector='removeObjectsWithKeysInArray:error:'>
1168
- <arg declared_type='NSArray*' type='@' name='theKeys' index='0'/>
1169
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='1'/>
1170
- <retval declared_type='BOOL' type='B'/>
1266
+ <arg type='@' index='0' declared_type='NSArray*' name='theKeys'/>
1267
+ <arg type='^@' index='1' type_modifier='o' declared_type='NSError**' name='outError'/>
1268
+ <retval type='B' declared_type='BOOL'/>
1171
1269
  </method>
1172
1270
  <method selector='rollbackTransactionAndReturnError:'>
1173
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
1174
- <retval declared_type='BOOL' type='B'/>
1271
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
1272
+ <retval type='B' declared_type='BOOL'/>
1175
1273
  </method>
1176
1274
  <method selector='saveInterval'>
1177
- <retval declared_type='NSUInteger' type='I'/>
1275
+ <retval type='I' declared_type='NSUInteger'/>
1178
1276
  </method>
1179
1277
  <method selector='saveStoreAndReturnError:'>
1180
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='0'/>
1181
- <retval declared_type='BOOL' type='B'/>
1278
+ <arg type='^@' index='0' type_modifier='o' declared_type='NSError**' name='outError'/>
1279
+ <retval type='B' declared_type='BOOL'/>
1182
1280
  </method>
1183
1281
  <method selector='saveStoreToDirectoryAtPath:compactDatabase:error:'>
1184
- <arg declared_type='NSString*' type='@' name='thePath' index='0'/>
1185
- <arg declared_type='BOOL' type='B' name='shouldCompact' index='1'/>
1186
- <arg declared_type='NSError**' type='^@' name='outError' type_modifier='o' index='2'/>
1187
- <retval declared_type='BOOL' type='B'/>
1282
+ <arg type='@' index='0' declared_type='NSString*' name='thePath'/>
1283
+ <arg type='B' index='1' declared_type='BOOL' name='shouldCompact'/>
1284
+ <arg type='^@' index='2' type_modifier='o' declared_type='NSError**' name='outError'/>
1285
+ <retval type='B' declared_type='BOOL'/>
1188
1286
  </method>
1189
1287
  <method selector='setNanoEngineProcessingMode:'>
1190
- <arg declared_type='NSFEngineProcessingMode' type='i' name='nanoEngineProcessingMode' index='0'/>
1191
- <retval declared_type='void' type='v'/>
1288
+ <arg type='i' index='0' declared_type='NSFEngineProcessingMode' name='nanoEngineProcessingMode'/>
1289
+ <retval type='v' declared_type='void'/>
1192
1290
  </method>
1193
1291
  <method selector='setNanoStoreEngine:'>
1194
- <arg declared_type='NSFNanoEngine*' type='@' name='nanoStoreEngine' index='0'/>
1195
- <retval declared_type='void' type='v'/>
1292
+ <arg type='@' index='0' declared_type='NSFNanoEngine*' name='nanoStoreEngine'/>
1293
+ <retval type='v' declared_type='void'/>
1196
1294
  </method>
1197
1295
  <method selector='setSaveInterval:'>
1198
- <arg declared_type='NSUInteger' type='I' name='saveInterval' index='0'/>
1199
- <retval declared_type='void' type='v'/>
1296
+ <arg type='I' index='0' declared_type='NSUInteger' name='saveInterval'/>
1297
+ <retval type='v' declared_type='void'/>
1298
+ </method>
1299
+ </class>
1300
+ <class name='NSFOrderedDictionary'>
1301
+ <method selector='insertObject:forKey:atIndex:'>
1302
+ <arg type='@' index='0' declared_type='id' name='anObject'/>
1303
+ <arg type='@' index='1' declared_type='id' name='aKey'/>
1304
+ <arg type='I' index='2' declared_type='NSUInteger' name='anIndex'/>
1305
+ <retval type='v' declared_type='void'/>
1306
+ </method>
1307
+ <method selector='keyAtIndex:'>
1308
+ <arg type='I' index='0' declared_type='NSUInteger' name='anIndex'/>
1309
+ <retval type='@' declared_type='id'/>
1310
+ </method>
1311
+ <method selector='reverseKeyEnumerator'>
1312
+ <retval type='@' declared_type='NSEnumerator*'/>
1200
1313
  </method>
1201
1314
  </class>
1202
1315
  <class name='NSObject'>
1203
1316
  <method selector='initNanoObjectFromDictionaryRepresentation:forKey:store:'>
1204
- <arg declared_type='NSDictionary*' type='@' name='theDictionary' index='0'/>
1205
- <arg declared_type='NSString*' type='@' name='aKey' index='1'/>
1206
- <arg declared_type='NSFNanoStore*' type='@' name='theStore' index='2'/>
1207
- <retval declared_type='id' type='@'/>
1317
+ <arg type='@' index='0' declared_type='NSDictionary*' name='theDictionary'/>
1318
+ <arg type='@' index='1' declared_type='NSString*' name='aKey'/>
1319
+ <arg type='@' index='2' declared_type='NSFNanoStore*' name='theStore'/>
1320
+ <retval type='@' declared_type='id'/>
1208
1321
  </method>
1209
1322
  <method selector='nanoObjectDictionaryRepresentation'>
1210
- <retval declared_type='NSDictionary*' type='@'/>
1323
+ <retval type='@' declared_type='NSDictionary*'/>
1211
1324
  </method>
1212
1325
  <method selector='nanoObjectKey'>
1213
- <retval declared_type='NSString*' type='@'/>
1326
+ <retval type='@' declared_type='NSString*'/>
1214
1327
  </method>
1215
1328
  <method selector='rootObject'>
1216
- <retval declared_type='id' type='@'/>
1329
+ <retval type='@' declared_type='id'/>
1217
1330
  </method>
1218
1331
  </class>
1219
1332
  <informal_protocol name='NSFNanoObjectProtocol'>
1220
1333
  <method type='@20@0:4@8@12@16' selector='initNanoObjectFromDictionaryRepresentation:forKey:store:'>
1221
- <arg declared_type='NSDictionary*' type='@' name='theDictionary' index='0'/>
1222
- <arg declared_type='NSString*' type='@' name='aKey' index='1'/>
1223
- <arg declared_type='NSFNanoStore*' type='@' name='theStore' index='2'/>
1224
- <retval declared_type='id' type='@'/>
1334
+ <arg type='@' index='0' declared_type='NSDictionary*' name='theDictionary'/>
1335
+ <arg type='@' index='1' declared_type='NSString*' name='aKey'/>
1336
+ <arg type='@' index='2' declared_type='NSFNanoStore*' name='theStore'/>
1337
+ <retval type='@' declared_type='id'/>
1225
1338
  </method>
1226
1339
  <method type='@8@0:4' selector='nanoObjectDictionaryRepresentation'>
1227
- <retval declared_type='NSDictionary*' type='@'/>
1340
+ <retval type='@' declared_type='NSDictionary*'/>
1228
1341
  </method>
1229
1342
  <method type='@8@0:4' selector='nanoObjectKey'>
1230
- <retval declared_type='NSString*' type='@'/>
1343
+ <retval type='@' declared_type='NSString*'/>
1231
1344
  </method>
1232
1345
  <method type='@8@0:4' selector='rootObject'>
1233
- <retval declared_type='id' type='@'/>
1346
+ <retval type='@' declared_type='id'/>
1234
1347
  </method>
1235
1348
  </informal_protocol>
1236
1349
  </signatures>