pinterest-ruby 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (150) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +7 -0
  3. data/.rubocop.yml +63 -0
  4. data/.travis-gemfile +17 -0
  5. data/.travis.yml +12 -0
  6. data/.yardopts +1 -0
  7. data/CHANGELOG.md +3 -0
  8. data/Gemfile +24 -0
  9. data/README.md +34 -0
  10. data/Rakefile +44 -0
  11. data/docs/FaradayMiddleware/SafeOj.html +218 -0
  12. data/docs/FaradayMiddleware.html +125 -0
  13. data/docs/Pinterest/Board.html +410 -0
  14. data/docs/Pinterest/Client.html +1894 -0
  15. data/docs/Pinterest/Collection.html +1877 -0
  16. data/docs/Pinterest/Endpoints/Authentication.html +578 -0
  17. data/docs/Pinterest/Endpoints/Boards.html +1443 -0
  18. data/docs/Pinterest/Endpoints/Pins.html +1296 -0
  19. data/docs/Pinterest/Endpoints/Users.html +1220 -0
  20. data/docs/Pinterest/Endpoints.html +127 -0
  21. data/docs/Pinterest/Entity.html +473 -0
  22. data/docs/Pinterest/Errors/AuthorizationError.html +158 -0
  23. data/docs/Pinterest/Errors/BadRequestError.html +158 -0
  24. data/docs/Pinterest/Errors/BaseError.html +487 -0
  25. data/docs/Pinterest/Errors/MethodNotAllowedError.html +158 -0
  26. data/docs/Pinterest/Errors/NotFoundError.html +158 -0
  27. data/docs/Pinterest/Errors/NotImplementedError.html +158 -0
  28. data/docs/Pinterest/Errors/PermissionsError.html +158 -0
  29. data/docs/Pinterest/Errors/RateLimitError.html +158 -0
  30. data/docs/Pinterest/Errors/ServerError.html +158 -0
  31. data/docs/Pinterest/Errors/TimeoutError.html +158 -0
  32. data/docs/Pinterest/Errors.html +377 -0
  33. data/docs/Pinterest/Image.html +617 -0
  34. data/docs/Pinterest/Interest.html +402 -0
  35. data/docs/Pinterest/Pin.html +511 -0
  36. data/docs/Pinterest/User.html +408 -0
  37. data/docs/Pinterest/Version.html +187 -0
  38. data/docs/Pinterest.html +130 -0
  39. data/docs/_index.html +401 -0
  40. data/docs/class_list.html +51 -0
  41. data/docs/css/common.css +1 -0
  42. data/docs/css/full_list.css +58 -0
  43. data/docs/css/style.css +492 -0
  44. data/docs/file.README.html +106 -0
  45. data/docs/file_list.html +56 -0
  46. data/docs/frames.html +17 -0
  47. data/docs/index.html +106 -0
  48. data/docs/js/app.js +243 -0
  49. data/docs/js/full_list.js +216 -0
  50. data/docs/js/jquery.js +4 -0
  51. data/docs/method_list.html +643 -0
  52. data/docs/top-level-namespace.html +110 -0
  53. data/lib/pinterest/client.rb +146 -0
  54. data/lib/pinterest/collection.rb +97 -0
  55. data/lib/pinterest/endpoints/authentication.rb +99 -0
  56. data/lib/pinterest/endpoints/boards.rb +193 -0
  57. data/lib/pinterest/endpoints/pins.rb +187 -0
  58. data/lib/pinterest/endpoints/users.rb +158 -0
  59. data/lib/pinterest/errors.rb +94 -0
  60. data/lib/pinterest/models/board.rb +34 -0
  61. data/lib/pinterest/models/entity.rb +42 -0
  62. data/lib/pinterest/models/image.rb +49 -0
  63. data/lib/pinterest/models/interest.rb +30 -0
  64. data/lib/pinterest/models/pin.rb +43 -0
  65. data/lib/pinterest/models/user.rb +33 -0
  66. data/lib/pinterest/safe_oj.rb +25 -0
  67. data/lib/pinterest/version.rb +23 -0
  68. data/lib/pinterest.rb +31 -0
  69. data/pinterest.gemspec +32 -0
  70. data/spec/cassettes/Pinterest_Client/_perform_network_request_private_/should_correctly_handle_malformed_requests.yml +51 -0
  71. data/spec/cassettes/Pinterest_Endpoints_Authentication/_fetch_access_token/should_make_the_call_to_Pinterest_and_return_the_authorization_token_also_saving_it.yml +58 -0
  72. data/spec/cassettes/Pinterest_Endpoints_Authentication/_verify_access_token/should_return_an_exception_when_using_an_invalid_token.yml +52 -0
  73. data/spec/cassettes/Pinterest_Endpoints_Authentication/_verify_access_token/should_verify_the_token.yml +59 -0
  74. data/spec/cassettes/Pinterest_Endpoints_Boards/_board/should_complain_for_invalid_boards.yml +48 -0
  75. data/spec/cassettes/Pinterest_Endpoints_Boards/_board/should_get_the_current_informations.yml +63 -0
  76. data/spec/cassettes/Pinterest_Endpoints_Boards/_board/should_restrict_to_requested_fields.yml +57 -0
  77. data/spec/cassettes/Pinterest_Endpoints_Boards/_boards/should_only_get_requested_fields.yml +57 -0
  78. data/spec/cassettes/Pinterest_Endpoints_Boards/_boards/should_return_a_list_of_boards.yml +74 -0
  79. data/spec/cassettes/Pinterest_Endpoints_Boards/_create_board/should_create_the_board_and_return_it_with_only_the_requested_fields.yml +56 -0
  80. data/spec/cassettes/Pinterest_Endpoints_Boards/_delete_board/should_perform_the_call_and_return_an_error.yml +48 -0
  81. data/spec/cassettes/Pinterest_Endpoints_Boards/_delete_board/should_perform_the_call_and_return_true.yml +109 -0
  82. data/spec/cassettes/Pinterest_Endpoints_Boards/_edit_board/should_edit_the_board_and_return_it_with_only_the_requested_fields.yml +56 -0
  83. data/spec/cassettes/Pinterest_Endpoints_Boards/_follow_board/should_complain_for_invalid_boards.yml +56 -0
  84. data/spec/cassettes/Pinterest_Endpoints_Boards/_follow_board/should_perform_the_call_and_return_true.yml +109 -0
  85. data/spec/cassettes/Pinterest_Endpoints_Boards/_following_boards/should_only_get_requested_fields.yml +59 -0
  86. data/spec/cassettes/Pinterest_Endpoints_Boards/_following_boards/should_paginate_correctly.yml +72 -0
  87. data/spec/cassettes/Pinterest_Endpoints_Boards/_following_boards/should_return_the_followed_boards.yml +72 -0
  88. data/spec/cassettes/Pinterest_Endpoints_Boards/_search_my_boards/should_only_get_requested_fields.yml +59 -0
  89. data/spec/cassettes/Pinterest_Endpoints_Boards/_search_my_boards/should_paginate_correctly.yml +66 -0
  90. data/spec/cassettes/Pinterest_Endpoints_Boards/_search_my_boards/should_search_boards.yml +75 -0
  91. data/spec/cassettes/Pinterest_Endpoints_Boards/_suggested_boards/should_return_the_suggested_boards_returning_only_the_requested_fields.yml +56 -0
  92. data/spec/cassettes/Pinterest_Endpoints_Boards/_unfollow_board/should_complain_for_invalid_boards.yml +56 -0
  93. data/spec/cassettes/Pinterest_Endpoints_Boards/_unfollow_board/should_perform_the_call_and_return_true.yml +109 -0
  94. data/spec/cassettes/Pinterest_Endpoints_Pins/_board_pins/should_only_get_requested_fields.yml +59 -0
  95. data/spec/cassettes/Pinterest_Endpoints_Pins/_board_pins/should_paginate_correctly.yml +85 -0
  96. data/spec/cassettes/Pinterest_Endpoints_Pins/_board_pins/should_return_the_pins_of_the_board.yml +85 -0
  97. data/spec/cassettes/Pinterest_Endpoints_Pins/_create_pin/should_create_a_pin_by_using_a_image_URL.yml +71 -0
  98. data/spec/cassettes/Pinterest_Endpoints_Pins/_create_pin/should_create_a_pin_by_using_a_image_file.yml +1997 -0
  99. data/spec/cassettes/Pinterest_Endpoints_Pins/_create_pin/should_return_a_pin_containing_only_requested_fields.yml +56 -0
  100. data/spec/cassettes/Pinterest_Endpoints_Pins/_delete_pin/should_perform_the_call_and_return_an_error.yml +56 -0
  101. data/spec/cassettes/Pinterest_Endpoints_Pins/_delete_pin/should_perform_the_call_and_return_true.yml +109 -0
  102. data/spec/cassettes/Pinterest_Endpoints_Pins/_edit_pin/should_edit_the_pin_and_return_it_with_only_the_requested_fields.yml +56 -0
  103. data/spec/cassettes/Pinterest_Endpoints_Pins/_likes/should_only_get_requested_fields.yml +58 -0
  104. data/spec/cassettes/Pinterest_Endpoints_Pins/_likes/should_paginate_correctly.yml +87 -0
  105. data/spec/cassettes/Pinterest_Endpoints_Pins/_likes/should_return_the_list_of_liked_pins.yml +85 -0
  106. data/spec/cassettes/Pinterest_Endpoints_Pins/_pin/should_complain_for_non_existent_pins.yml +56 -0
  107. data/spec/cassettes/Pinterest_Endpoints_Pins/_pin/should_get_the_current_informations.yml +71 -0
  108. data/spec/cassettes/Pinterest_Endpoints_Pins/_pin/should_restrict_to_requested_fields.yml +56 -0
  109. data/spec/cassettes/Pinterest_Endpoints_Pins/_pins/should_only_get_requested_fields.yml +59 -0
  110. data/spec/cassettes/Pinterest_Endpoints_Pins/_pins/should_paginate_correctly.yml +808 -0
  111. data/spec/cassettes/Pinterest_Endpoints_Pins/_pins/should_return_my_pins.yml +88 -0
  112. data/spec/cassettes/Pinterest_Endpoints_Pins/_search_my_pins/should_only_get_requested_fields.yml +61 -0
  113. data/spec/cassettes/Pinterest_Endpoints_Pins/_search_my_pins/should_paginate_correctly.yml +89 -0
  114. data/spec/cassettes/Pinterest_Endpoints_Pins/_search_my_pins/should_search_my_pins.yml +89 -0
  115. data/spec/cassettes/Pinterest_Endpoints_Users/_follow_interest/should_perform_the_call_and_return_an_error.yml +48 -0
  116. data/spec/cassettes/Pinterest_Endpoints_Users/_follow_user/should_complain_for_invalid_users.yml +56 -0
  117. data/spec/cassettes/Pinterest_Endpoints_Users/_follow_user/should_perform_the_call_and_return_true.yml +109 -0
  118. data/spec/cassettes/Pinterest_Endpoints_Users/_followers/should_only_get_requested_fields.yml +62 -0
  119. data/spec/cassettes/Pinterest_Endpoints_Users/_followers/should_paginate_correctly.yml +62 -0
  120. data/spec/cassettes/Pinterest_Endpoints_Users/_followers/should_return_a_list_of_followers.yml +62 -0
  121. data/spec/cassettes/Pinterest_Endpoints_Users/_following_users/should_only_get_requested_fields.yml +62 -0
  122. data/spec/cassettes/Pinterest_Endpoints_Users/_following_users/should_paginate_correctly.yml +131 -0
  123. data/spec/cassettes/Pinterest_Endpoints_Users/_following_users/should_return_a_list_of_followed_users.yml +66 -0
  124. data/spec/cassettes/Pinterest_Endpoints_Users/_interests/should_paginate_correctly.yml +112 -0
  125. data/spec/cassettes/Pinterest_Endpoints_Users/_interests/should_return_a_list_of_followed_interest.yml +58 -0
  126. data/spec/cassettes/Pinterest_Endpoints_Users/_me/should_get_the_current_informations.yml +62 -0
  127. data/spec/cassettes/Pinterest_Endpoints_Users/_me/should_restrict_to_requested_fields.yml +56 -0
  128. data/spec/cassettes/Pinterest_Endpoints_Users/_unfollow_interest/should_perform_the_call_and_return_an_error.yml +48 -0
  129. data/spec/cassettes/Pinterest_Endpoints_Users/_unfollow_user/should_complain_for_invalid_users.yml +56 -0
  130. data/spec/cassettes/Pinterest_Endpoints_Users/_unfollow_user/should_perform_the_call_and_return_true.yml +109 -0
  131. data/spec/cassettes/Pinterest_Endpoints_Users/_user/should_complain_for_non_existent_users.yml +56 -0
  132. data/spec/cassettes/Pinterest_Endpoints_Users/_user/should_get_the_current_informations.yml +60 -0
  133. data/spec/cassettes/Pinterest_Endpoints_Users/_user/should_restrict_to_requested_fields.yml +56 -0
  134. data/spec/pinterest/client_spec.rb +70 -0
  135. data/spec/pinterest/collection_spec.rb +82 -0
  136. data/spec/pinterest/endpoints/authentication_spec.rb +81 -0
  137. data/spec/pinterest/endpoints/boards_spec.rb +209 -0
  138. data/spec/pinterest/endpoints/pins_spec.rb +239 -0
  139. data/spec/pinterest/endpoints/users_spec.rb +194 -0
  140. data/spec/pinterest/errors_spec.rb +59 -0
  141. data/spec/pinterest/fixtures/first.jpg +0 -0
  142. data/spec/pinterest/models/board_spec.rb +48 -0
  143. data/spec/pinterest/models/entity_spec.rb +35 -0
  144. data/spec/pinterest/models/image_spec.rb +50 -0
  145. data/spec/pinterest/models/interest_spec.rb +20 -0
  146. data/spec/pinterest/models/pin_spec.rb +55 -0
  147. data/spec/pinterest/models/user_spec.rb +45 -0
  148. data/spec/spec_helper.rb +49 -0
  149. data/tester.rb +19 -0
  150. metadata +341 -0
@@ -0,0 +1,1877 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Class: Pinterest::Collection
8
+
9
+ &mdash; Documentation by YARD 0.9.7
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ pathId = "Pinterest::Collection";
19
+ relpath = '../';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="../class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="../_index.html">Index (C)</a> &raquo;
40
+ <span class='title'><span class='object_link'><a href="../Pinterest.html" title="Pinterest (module)">Pinterest</a></span></span>
41
+ &raquo;
42
+ <span class="title">Collection</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="../class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Class: Pinterest::Collection
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+ <dl>
70
+ <dt>Inherits:</dt>
71
+ <dd>
72
+ <span class="inheritName">Object</span>
73
+
74
+ <ul class="fullTree">
75
+ <li>Object</li>
76
+
77
+ <li class="next">Pinterest::Collection</li>
78
+
79
+ </ul>
80
+ <a href="#" class="inheritanceTree">show all</a>
81
+
82
+ </dd>
83
+ </dl>
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+ <dl>
96
+ <dt>Defined in:</dt>
97
+ <dd>lib/pinterest/collection.rb</dd>
98
+ </dl>
99
+
100
+ </div>
101
+
102
+ <h2>Overview</h2><div class="docstring">
103
+ <div class="discussion">
104
+ <p>A collection of objects, including pagination data.</p>
105
+
106
+
107
+ </div>
108
+ </div>
109
+ <div class="tags">
110
+
111
+
112
+ </div>
113
+
114
+
115
+
116
+ <h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
117
+ <ul class="summary">
118
+
119
+ <li class="public ">
120
+ <span class="summary_signature">
121
+
122
+ <a href="#current_cursor-instance_method" title="#current_cursor (instance method)">#<strong>current_cursor</strong> &#x21d2; String </a>
123
+
124
+
125
+
126
+ </span>
127
+
128
+
129
+
130
+
131
+
132
+
133
+
134
+
135
+
136
+
137
+
138
+
139
+ <span class="summary_desc"><div class='inline'><p>The cursor to obtain the current page of results.</p>
140
+ </div></span>
141
+
142
+ </li>
143
+
144
+
145
+ <li class="public ">
146
+ <span class="summary_signature">
147
+
148
+ <a href="#limit-instance_method" title="#limit (instance method)">#<strong>limit</strong> &#x21d2; Fixnum </a>
149
+
150
+
151
+
152
+ </span>
153
+
154
+
155
+
156
+
157
+
158
+
159
+
160
+
161
+
162
+
163
+
164
+
165
+ <span class="summary_desc"><div class='inline'><p>The maximum number of results to get from Pinterest API.</p>
166
+ </div></span>
167
+
168
+ </li>
169
+
170
+
171
+ <li class="public ">
172
+ <span class="summary_signature">
173
+
174
+ <a href="#next_cursor-instance_method" title="#next_cursor (instance method)">#<strong>next_cursor</strong> &#x21d2; String </a>
175
+
176
+
177
+
178
+ </span>
179
+
180
+
181
+
182
+
183
+
184
+
185
+
186
+
187
+
188
+
189
+
190
+
191
+ <span class="summary_desc"><div class='inline'><p>The cursor to obtain the next page of results.</p>
192
+ </div></span>
193
+
194
+ </li>
195
+
196
+
197
+ <li class="public ">
198
+ <span class="summary_signature">
199
+
200
+ <a href="#records-instance_method" title="#records (instance method)">#<strong>records</strong> &#x21d2; Pinterest::Entity </a>
201
+
202
+
203
+
204
+ </span>
205
+
206
+
207
+
208
+
209
+
210
+
211
+
212
+
213
+
214
+
215
+
216
+
217
+ <span class="summary_desc"><div class='inline'><p>A list of objects.</p>
218
+ </div></span>
219
+
220
+ </li>
221
+
222
+
223
+ </ul>
224
+
225
+
226
+
227
+
228
+
229
+ <h2>
230
+ Instance Method Summary
231
+ <small><a href="#" class="summary_toggle">collapse</a></small>
232
+ </h2>
233
+
234
+ <ul class="summary">
235
+
236
+ <li class="public ">
237
+ <span class="summary_signature">
238
+
239
+ <a href="#[]-instance_method" title="#[] (instance method)">#<strong>[]</strong>(index) &#x21d2; Object </a>
240
+
241
+
242
+
243
+ </span>
244
+
245
+
246
+
247
+
248
+
249
+
250
+
251
+
252
+
253
+ <span class="summary_desc"><div class='inline'><p>Returns a object from the collection.</p>
254
+ </div></span>
255
+
256
+ </li>
257
+
258
+
259
+ <li class="public ">
260
+ <span class="summary_signature">
261
+
262
+ <a href="#as_json-instance_method" title="#as_json (instance method)">#<strong>as_json</strong>(options = {}) &#x21d2; Hash </a>
263
+
264
+
265
+
266
+ </span>
267
+
268
+
269
+
270
+
271
+
272
+
273
+
274
+
275
+
276
+ <span class="summary_desc"><div class='inline'><p>Serialize the collection as a Hash that can be serialized as JSON.</p>
277
+ </div></span>
278
+
279
+ </li>
280
+
281
+
282
+ <li class="public ">
283
+ <span class="summary_signature">
284
+
285
+ <a href="#current_page-instance_method" title="#current_page (instance method)">#<strong>current_page</strong> &#x21d2; String </a>
286
+
287
+
288
+
289
+ </span>
290
+
291
+
292
+
293
+
294
+
295
+
296
+
297
+
298
+
299
+ <span class="summary_desc"><div class='inline'><p>Returns the current page cursor.</p>
300
+ </div></span>
301
+
302
+ </li>
303
+
304
+
305
+ <li class="public ">
306
+ <span class="summary_signature">
307
+
308
+ <a href="#empty%3F-instance_method" title="#empty? (instance method)">#<strong>empty?</strong> &#x21d2; Boolean </a>
309
+
310
+
311
+
312
+ </span>
313
+
314
+
315
+
316
+
317
+
318
+
319
+
320
+
321
+
322
+ <span class="summary_desc"><div class='inline'><p>Checks if the collection is empty.</p>
323
+ </div></span>
324
+
325
+ </li>
326
+
327
+
328
+ <li class="public ">
329
+ <span class="summary_signature">
330
+
331
+ <a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(raw_data, cursor, limit, &amp;record_creator) &#x21d2; Collection </a>
332
+
333
+
334
+
335
+ </span>
336
+
337
+
338
+ <span class="note title constructor">constructor</span>
339
+
340
+
341
+
342
+
343
+
344
+
345
+
346
+
347
+ <span class="summary_desc"><div class='inline'><p>Creates a new collection.</p>
348
+ </div></span>
349
+
350
+ </li>
351
+
352
+
353
+ <li class="public ">
354
+ <span class="summary_signature">
355
+
356
+ <a href="#next%3F-instance_method" title="#next? (instance method)">#<strong>next?</strong> &#x21d2; Boolean </a>
357
+
358
+
359
+
360
+ (also: #next_page?, #eof?)
361
+
362
+ </span>
363
+
364
+
365
+
366
+
367
+
368
+
369
+
370
+
371
+
372
+ <span class="summary_desc"><div class='inline'><p>Checks if the collection has a next page.</p>
373
+ </div></span>
374
+
375
+ </li>
376
+
377
+
378
+ <li class="public ">
379
+ <span class="summary_signature">
380
+
381
+ <a href="#next_page-instance_method" title="#next_page (instance method)">#<strong>next_page</strong> &#x21d2; String </a>
382
+
383
+
384
+
385
+ </span>
386
+
387
+
388
+
389
+
390
+
391
+
392
+
393
+
394
+
395
+ <span class="summary_desc"><div class='inline'><p>Returns the next page cursor.</p>
396
+ </div></span>
397
+
398
+ </li>
399
+
400
+
401
+ <li class="public ">
402
+ <span class="summary_signature">
403
+
404
+ <a href="#size-instance_method" title="#size (instance method)">#<strong>size</strong> &#x21d2; Fixnum </a>
405
+
406
+
407
+
408
+ (also: #count, #length)
409
+
410
+ </span>
411
+
412
+
413
+
414
+
415
+
416
+
417
+
418
+
419
+
420
+ <span class="summary_desc"><div class='inline'><p>Returns the size of the collection.</p>
421
+ </div></span>
422
+
423
+ </li>
424
+
425
+
426
+ </ul>
427
+
428
+
429
+ <div id="constructor_details" class="method_details_list">
430
+ <h2>Constructor Details</h2>
431
+
432
+ <div class="method_details first">
433
+ <h3 class="signature first" id="initialize-instance_method">
434
+
435
+ #<strong>initialize</strong>(raw_data, cursor, limit, &amp;record_creator) &#x21d2; <tt><span class='object_link'><a href="" title="Pinterest::Collection (class)">Collection</a></span></tt>
436
+
437
+
438
+
439
+
440
+
441
+ </h3><div class="docstring">
442
+ <div class="discussion">
443
+ <p>Creates a new collection. This class is for internal use.</p>
444
+
445
+
446
+ </div>
447
+ </div>
448
+ <div class="tags">
449
+ <p class="tag_title">Parameters:</p>
450
+ <ul class="param">
451
+
452
+ <li>
453
+
454
+ <span class='name'>raw_data</span>
455
+
456
+
457
+ <span class='type'>(<tt>Hash</tt>)</span>
458
+
459
+
460
+
461
+ &mdash;
462
+ <div class='inline'><p>A raw response obtained by Pinterest API.</p>
463
+ </div>
464
+
465
+ </li>
466
+
467
+ <li>
468
+
469
+ <span class='name'>cursor</span>
470
+
471
+
472
+ <span class='type'>(<tt>String</tt>)</span>
473
+
474
+
475
+
476
+ &mdash;
477
+ <div class='inline'><p>The current cursor.</p>
478
+ </div>
479
+
480
+ </li>
481
+
482
+ <li>
483
+
484
+ <span class='name'>limit</span>
485
+
486
+
487
+ <span class='type'>(<tt>Fixnum</tt>)</span>
488
+
489
+
490
+
491
+ &mdash;
492
+ <div class='inline'><p>The maximum number of records to obtain from Pinterest API.</p>
493
+ </div>
494
+
495
+ </li>
496
+
497
+ <li>
498
+
499
+ <span class='name'>record_creator</span>
500
+
501
+
502
+ <span class='type'>(<tt>Proc</tt>)</span>
503
+
504
+
505
+
506
+ &mdash;
507
+ <div class='inline'><p>The code to trasform each raw record in a object.</p>
508
+ </div>
509
+
510
+ </li>
511
+
512
+ </ul>
513
+
514
+ <p class="tag_title">Raises:</p>
515
+ <ul class="raise">
516
+
517
+ <li>
518
+
519
+
520
+ <span class='type'>(<tt>ArgumentError</tt>)</span>
521
+
522
+
523
+
524
+ </li>
525
+
526
+ </ul>
527
+
528
+ </div><table class="source_code">
529
+ <tr>
530
+ <td>
531
+ <pre class="lines">
532
+
533
+
534
+ 26
535
+ 27
536
+ 28
537
+ 29
538
+ 30
539
+ 31
540
+ 32
541
+ 33
542
+ 34</pre>
543
+ </td>
544
+ <td>
545
+ <pre class="code"><span class="info file"># File 'lib/pinterest/collection.rb', line 26</span>
546
+
547
+ <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_raw_data'>raw_data</span><span class='comma'>,</span> <span class='id identifier rubyid_cursor'>cursor</span><span class='comma'>,</span> <span class='id identifier rubyid_limit'>limit</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_record_creator'>record_creator</span><span class='rparen'>)</span>
548
+ <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>raw_data must be an Hash.</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Hash</span><span class='rparen'>)</span>
549
+ <span class='id identifier rubyid_record_creator'>record_creator</span> <span class='op'>||=</span> <span class='tlambda'>-&gt;</span><span class='lparen'>(</span><span class='id identifier rubyid_record'>record</span><span class='rparen'>)</span> <span class='tlambeg'>{</span> <span class='id identifier rubyid_record'>record</span> <span class='rbrace'>}</span>
550
+
551
+ <span class='ivar'>@limit</span> <span class='op'>=</span> <span class='id identifier rubyid_limit'>limit</span>
552
+ <span class='ivar'>@current_cursor</span> <span class='op'>=</span> <span class='id identifier rubyid_cursor'>cursor</span>
553
+ <span class='ivar'>@next_cursor</span> <span class='op'>=</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>page</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cursor</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>page</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>page</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cursor</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span>
554
+ <span class='ivar'>@records</span> <span class='op'>=</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>data</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_record_creator'>record_creator</span><span class='rparen'>)</span>
555
+ <span class='kw'>end</span></pre>
556
+ </td>
557
+ </tr>
558
+ </table>
559
+ </div>
560
+
561
+ </div>
562
+
563
+ <div id="instance_attr_details" class="attr_details">
564
+ <h2>Instance Attribute Details</h2>
565
+
566
+
567
+ <span id="current_cursor=-instance_method"></span>
568
+ <div class="method_details first">
569
+ <h3 class="signature first" id="current_cursor-instance_method">
570
+
571
+ #<strong>current_cursor</strong> &#x21d2; <tt>String</tt>
572
+
573
+
574
+
575
+
576
+
577
+ </h3><div class="docstring">
578
+ <div class="discussion">
579
+ <p>Returns The cursor to obtain the current page of results.</p>
580
+
581
+
582
+ </div>
583
+ </div>
584
+ <div class="tags">
585
+
586
+ <p class="tag_title">Returns:</p>
587
+ <ul class="return">
588
+
589
+ <li>
590
+
591
+
592
+ <span class='type'>(<tt>String</tt>)</span>
593
+
594
+
595
+
596
+ &mdash;
597
+ <div class='inline'><p>The cursor to obtain the current page of results.</p>
598
+ </div>
599
+
600
+ </li>
601
+
602
+ </ul>
603
+
604
+ </div><table class="source_code">
605
+ <tr>
606
+ <td>
607
+ <pre class="lines">
608
+
609
+
610
+ 17
611
+ 18
612
+ 19
613
+ 20
614
+ 21
615
+ 22
616
+ 23
617
+ 24
618
+ 25
619
+ 26
620
+ 27
621
+ 28
622
+ 29
623
+ 30
624
+ 31
625
+ 32
626
+ 33
627
+ 34
628
+ 35
629
+ 36
630
+ 37
631
+ 38
632
+ 39
633
+ 40
634
+ 41
635
+ 42
636
+ 43
637
+ 44
638
+ 45
639
+ 46
640
+ 47
641
+ 48
642
+ 49
643
+ 50
644
+ 51
645
+ 52
646
+ 53
647
+ 54
648
+ 55
649
+ 56
650
+ 57
651
+ 58
652
+ 59
653
+ 60
654
+ 61
655
+ 62
656
+ 63
657
+ 64
658
+ 65
659
+ 66
660
+ 67
661
+ 68
662
+ 69
663
+ 70
664
+ 71
665
+ 72
666
+ 73
667
+ 74
668
+ 75
669
+ 76
670
+ 77
671
+ 78
672
+ 79
673
+ 80
674
+ 81
675
+ 82
676
+ 83
677
+ 84
678
+ 85
679
+ 86
680
+ 87
681
+ 88
682
+ 89
683
+ 90
684
+ 91
685
+ 92
686
+ 93
687
+ 94
688
+ 95
689
+ 96</pre>
690
+ </td>
691
+ <td>
692
+ <pre class="code"><span class="info file"># File 'lib/pinterest/collection.rb', line 17</span>
693
+
694
+ <span class='kw'>class</span> <span class='const'><span class='object_link'><a href="" title="Pinterest::Collection (class)">Collection</a></span></span>
695
+ <span class='id identifier rubyid_attr_reader'>attr_reader</span> <span class='symbol'>:records</span><span class='comma'>,</span> <span class='symbol'>:limit</span><span class='comma'>,</span> <span class='symbol'>:current_cursor</span><span class='comma'>,</span> <span class='symbol'>:next_cursor</span>
696
+
697
+ <span class='comment'># Creates a new collection. This class is for internal use.
698
+ </span> <span class='comment'>#
699
+ </span> <span class='comment'># @param raw_data [Hash] A raw response obtained by Pinterest API.
700
+ </span> <span class='comment'># @param cursor [String] The current cursor.
701
+ </span> <span class='comment'># @param limit [Fixnum] The maximum number of records to obtain from Pinterest API.
702
+ </span> <span class='comment'># @param record_creator [Proc] The code to trasform each raw record in a object.
703
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_raw_data'>raw_data</span><span class='comma'>,</span> <span class='id identifier rubyid_cursor'>cursor</span><span class='comma'>,</span> <span class='id identifier rubyid_limit'>limit</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_record_creator'>record_creator</span><span class='rparen'>)</span>
704
+ <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>raw_data must be an Hash.</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Hash</span><span class='rparen'>)</span>
705
+ <span class='id identifier rubyid_record_creator'>record_creator</span> <span class='op'>||=</span> <span class='tlambda'>-&gt;</span><span class='lparen'>(</span><span class='id identifier rubyid_record'>record</span><span class='rparen'>)</span> <span class='tlambeg'>{</span> <span class='id identifier rubyid_record'>record</span> <span class='rbrace'>}</span>
706
+
707
+ <span class='ivar'>@limit</span> <span class='op'>=</span> <span class='id identifier rubyid_limit'>limit</span>
708
+ <span class='ivar'>@current_cursor</span> <span class='op'>=</span> <span class='id identifier rubyid_cursor'>cursor</span>
709
+ <span class='ivar'>@next_cursor</span> <span class='op'>=</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>page</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cursor</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>page</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>page</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cursor</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span>
710
+ <span class='ivar'>@records</span> <span class='op'>=</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>data</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_record_creator'>record_creator</span><span class='rparen'>)</span>
711
+ <span class='kw'>end</span>
712
+
713
+ <span class='comment'># Returns a object from the collection.
714
+ </span> <span class='comment'>#
715
+ </span> <span class='comment'># @param index [Fixnum] The index to get.
716
+ </span> <span class='kw'>def</span> <span class='op'>[]</span><span class='lparen'>(</span><span class='id identifier rubyid_index'>index</span><span class='rparen'>)</span>
717
+ <span class='id identifier rubyid_records'>records</span><span class='lbracket'>[</span><span class='id identifier rubyid_index'>index</span><span class='rbracket'>]</span>
718
+ <span class='kw'>end</span>
719
+
720
+ <span class='comment'># Returns the size of the collection.
721
+ </span> <span class='comment'>#
722
+ </span> <span class='comment'># @return [Fixnum] The size of the collection.
723
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_size'>size</span>
724
+ <span class='id identifier rubyid_records'>records</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span>
725
+ <span class='kw'>end</span>
726
+
727
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:count</span><span class='comma'>,</span> <span class='symbol'>:size</span>
728
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:length</span><span class='comma'>,</span> <span class='symbol'>:size</span>
729
+
730
+ <span class='comment'># Returns the current page cursor.
731
+ </span> <span class='comment'>#
732
+ </span> <span class='comment'># @return [String] The current page cursor.
733
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_current_page'>current_page</span>
734
+ <span class='id identifier rubyid_current_cursor'>current_cursor</span>
735
+ <span class='kw'>end</span>
736
+
737
+ <span class='comment'># Returns the next page cursor.
738
+ </span> <span class='comment'>#
739
+ </span> <span class='comment'># @return [String] The next page cursor.
740
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_next_page'>next_page</span>
741
+ <span class='id identifier rubyid_next_cursor'>next_cursor</span>
742
+ <span class='kw'>end</span>
743
+
744
+ <span class='comment'># Checks if the collection is empty.
745
+ </span> <span class='comment'>#
746
+ </span> <span class='comment'># @return [Boolean] `true` if the collection is empty, `false` otherwise.
747
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_empty?'>empty?</span>
748
+ <span class='id identifier rubyid_records'>records</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
749
+ <span class='kw'>end</span>
750
+
751
+ <span class='comment'># Checks if the collection has a next page.
752
+ </span> <span class='comment'>#
753
+ </span> <span class='comment'># @return [Boolean] `true` if the collection has a next page, `false` otherwise.
754
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_next?'>next?</span>
755
+ <span class='op'>!</span><span class='id identifier rubyid_next_cursor'>next_cursor</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
756
+ <span class='kw'>end</span>
757
+
758
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:next_page?</span><span class='comma'>,</span> <span class='symbol'>:next?</span>
759
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:eof?</span><span class='comma'>,</span> <span class='symbol'>:next?</span>
760
+
761
+ <span class='comment'># Serialize the collection as a Hash that can be serialized as JSON.
762
+ </span> <span class='comment'>#
763
+ </span> <span class='comment'># @param options [Hash] The options to use to serialize.
764
+ </span> <span class='comment'># @return [Hash] The serialized collection.
765
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
766
+ <span class='lbrace'>{</span>
767
+ <span class='label'>records:</span> <span class='id identifier rubyid_records'>records</span><span class='period'>.</span><span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span><span class='comma'>,</span>
768
+ <span class='label'>limit:</span> <span class='id identifier rubyid_limit'>limit</span><span class='comma'>,</span>
769
+ <span class='label'>current_cursor:</span> <span class='id identifier rubyid_current_cursor'>current_cursor</span><span class='comma'>,</span>
770
+ <span class='label'>next_cursor:</span> <span class='id identifier rubyid_next_cursor'>next_cursor</span>
771
+ <span class='rbrace'>}</span>
772
+ <span class='kw'>end</span>
773
+ <span class='kw'>end</span></pre>
774
+ </td>
775
+ </tr>
776
+ </table>
777
+ </div>
778
+
779
+
780
+ <span id="limit=-instance_method"></span>
781
+ <div class="method_details ">
782
+ <h3 class="signature " id="limit-instance_method">
783
+
784
+ #<strong>limit</strong> &#x21d2; <tt>Fixnum</tt>
785
+
786
+
787
+
788
+
789
+
790
+ </h3><div class="docstring">
791
+ <div class="discussion">
792
+ <p>Returns The maximum number of results to get from Pinterest API.</p>
793
+
794
+
795
+ </div>
796
+ </div>
797
+ <div class="tags">
798
+
799
+ <p class="tag_title">Returns:</p>
800
+ <ul class="return">
801
+
802
+ <li>
803
+
804
+
805
+ <span class='type'>(<tt>Fixnum</tt>)</span>
806
+
807
+
808
+
809
+ &mdash;
810
+ <div class='inline'><p>The maximum number of results to get from Pinterest API.</p>
811
+ </div>
812
+
813
+ </li>
814
+
815
+ </ul>
816
+
817
+ </div><table class="source_code">
818
+ <tr>
819
+ <td>
820
+ <pre class="lines">
821
+
822
+
823
+ 17
824
+ 18
825
+ 19
826
+ 20
827
+ 21
828
+ 22
829
+ 23
830
+ 24
831
+ 25
832
+ 26
833
+ 27
834
+ 28
835
+ 29
836
+ 30
837
+ 31
838
+ 32
839
+ 33
840
+ 34
841
+ 35
842
+ 36
843
+ 37
844
+ 38
845
+ 39
846
+ 40
847
+ 41
848
+ 42
849
+ 43
850
+ 44
851
+ 45
852
+ 46
853
+ 47
854
+ 48
855
+ 49
856
+ 50
857
+ 51
858
+ 52
859
+ 53
860
+ 54
861
+ 55
862
+ 56
863
+ 57
864
+ 58
865
+ 59
866
+ 60
867
+ 61
868
+ 62
869
+ 63
870
+ 64
871
+ 65
872
+ 66
873
+ 67
874
+ 68
875
+ 69
876
+ 70
877
+ 71
878
+ 72
879
+ 73
880
+ 74
881
+ 75
882
+ 76
883
+ 77
884
+ 78
885
+ 79
886
+ 80
887
+ 81
888
+ 82
889
+ 83
890
+ 84
891
+ 85
892
+ 86
893
+ 87
894
+ 88
895
+ 89
896
+ 90
897
+ 91
898
+ 92
899
+ 93
900
+ 94
901
+ 95
902
+ 96</pre>
903
+ </td>
904
+ <td>
905
+ <pre class="code"><span class="info file"># File 'lib/pinterest/collection.rb', line 17</span>
906
+
907
+ <span class='kw'>class</span> <span class='const'><span class='object_link'><a href="" title="Pinterest::Collection (class)">Collection</a></span></span>
908
+ <span class='id identifier rubyid_attr_reader'>attr_reader</span> <span class='symbol'>:records</span><span class='comma'>,</span> <span class='symbol'>:limit</span><span class='comma'>,</span> <span class='symbol'>:current_cursor</span><span class='comma'>,</span> <span class='symbol'>:next_cursor</span>
909
+
910
+ <span class='comment'># Creates a new collection. This class is for internal use.
911
+ </span> <span class='comment'>#
912
+ </span> <span class='comment'># @param raw_data [Hash] A raw response obtained by Pinterest API.
913
+ </span> <span class='comment'># @param cursor [String] The current cursor.
914
+ </span> <span class='comment'># @param limit [Fixnum] The maximum number of records to obtain from Pinterest API.
915
+ </span> <span class='comment'># @param record_creator [Proc] The code to trasform each raw record in a object.
916
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_raw_data'>raw_data</span><span class='comma'>,</span> <span class='id identifier rubyid_cursor'>cursor</span><span class='comma'>,</span> <span class='id identifier rubyid_limit'>limit</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_record_creator'>record_creator</span><span class='rparen'>)</span>
917
+ <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>raw_data must be an Hash.</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Hash</span><span class='rparen'>)</span>
918
+ <span class='id identifier rubyid_record_creator'>record_creator</span> <span class='op'>||=</span> <span class='tlambda'>-&gt;</span><span class='lparen'>(</span><span class='id identifier rubyid_record'>record</span><span class='rparen'>)</span> <span class='tlambeg'>{</span> <span class='id identifier rubyid_record'>record</span> <span class='rbrace'>}</span>
919
+
920
+ <span class='ivar'>@limit</span> <span class='op'>=</span> <span class='id identifier rubyid_limit'>limit</span>
921
+ <span class='ivar'>@current_cursor</span> <span class='op'>=</span> <span class='id identifier rubyid_cursor'>cursor</span>
922
+ <span class='ivar'>@next_cursor</span> <span class='op'>=</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>page</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cursor</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>page</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>page</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cursor</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span>
923
+ <span class='ivar'>@records</span> <span class='op'>=</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>data</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_record_creator'>record_creator</span><span class='rparen'>)</span>
924
+ <span class='kw'>end</span>
925
+
926
+ <span class='comment'># Returns a object from the collection.
927
+ </span> <span class='comment'>#
928
+ </span> <span class='comment'># @param index [Fixnum] The index to get.
929
+ </span> <span class='kw'>def</span> <span class='op'>[]</span><span class='lparen'>(</span><span class='id identifier rubyid_index'>index</span><span class='rparen'>)</span>
930
+ <span class='id identifier rubyid_records'>records</span><span class='lbracket'>[</span><span class='id identifier rubyid_index'>index</span><span class='rbracket'>]</span>
931
+ <span class='kw'>end</span>
932
+
933
+ <span class='comment'># Returns the size of the collection.
934
+ </span> <span class='comment'>#
935
+ </span> <span class='comment'># @return [Fixnum] The size of the collection.
936
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_size'>size</span>
937
+ <span class='id identifier rubyid_records'>records</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span>
938
+ <span class='kw'>end</span>
939
+
940
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:count</span><span class='comma'>,</span> <span class='symbol'>:size</span>
941
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:length</span><span class='comma'>,</span> <span class='symbol'>:size</span>
942
+
943
+ <span class='comment'># Returns the current page cursor.
944
+ </span> <span class='comment'>#
945
+ </span> <span class='comment'># @return [String] The current page cursor.
946
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_current_page'>current_page</span>
947
+ <span class='id identifier rubyid_current_cursor'>current_cursor</span>
948
+ <span class='kw'>end</span>
949
+
950
+ <span class='comment'># Returns the next page cursor.
951
+ </span> <span class='comment'>#
952
+ </span> <span class='comment'># @return [String] The next page cursor.
953
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_next_page'>next_page</span>
954
+ <span class='id identifier rubyid_next_cursor'>next_cursor</span>
955
+ <span class='kw'>end</span>
956
+
957
+ <span class='comment'># Checks if the collection is empty.
958
+ </span> <span class='comment'>#
959
+ </span> <span class='comment'># @return [Boolean] `true` if the collection is empty, `false` otherwise.
960
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_empty?'>empty?</span>
961
+ <span class='id identifier rubyid_records'>records</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
962
+ <span class='kw'>end</span>
963
+
964
+ <span class='comment'># Checks if the collection has a next page.
965
+ </span> <span class='comment'>#
966
+ </span> <span class='comment'># @return [Boolean] `true` if the collection has a next page, `false` otherwise.
967
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_next?'>next?</span>
968
+ <span class='op'>!</span><span class='id identifier rubyid_next_cursor'>next_cursor</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
969
+ <span class='kw'>end</span>
970
+
971
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:next_page?</span><span class='comma'>,</span> <span class='symbol'>:next?</span>
972
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:eof?</span><span class='comma'>,</span> <span class='symbol'>:next?</span>
973
+
974
+ <span class='comment'># Serialize the collection as a Hash that can be serialized as JSON.
975
+ </span> <span class='comment'>#
976
+ </span> <span class='comment'># @param options [Hash] The options to use to serialize.
977
+ </span> <span class='comment'># @return [Hash] The serialized collection.
978
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
979
+ <span class='lbrace'>{</span>
980
+ <span class='label'>records:</span> <span class='id identifier rubyid_records'>records</span><span class='period'>.</span><span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span><span class='comma'>,</span>
981
+ <span class='label'>limit:</span> <span class='id identifier rubyid_limit'>limit</span><span class='comma'>,</span>
982
+ <span class='label'>current_cursor:</span> <span class='id identifier rubyid_current_cursor'>current_cursor</span><span class='comma'>,</span>
983
+ <span class='label'>next_cursor:</span> <span class='id identifier rubyid_next_cursor'>next_cursor</span>
984
+ <span class='rbrace'>}</span>
985
+ <span class='kw'>end</span>
986
+ <span class='kw'>end</span></pre>
987
+ </td>
988
+ </tr>
989
+ </table>
990
+ </div>
991
+
992
+
993
+ <span id="next_cursor=-instance_method"></span>
994
+ <div class="method_details ">
995
+ <h3 class="signature " id="next_cursor-instance_method">
996
+
997
+ #<strong>next_cursor</strong> &#x21d2; <tt>String</tt>
998
+
999
+
1000
+
1001
+
1002
+
1003
+ </h3><div class="docstring">
1004
+ <div class="discussion">
1005
+ <p>Returns The cursor to obtain the next page of results.</p>
1006
+
1007
+
1008
+ </div>
1009
+ </div>
1010
+ <div class="tags">
1011
+
1012
+ <p class="tag_title">Returns:</p>
1013
+ <ul class="return">
1014
+
1015
+ <li>
1016
+
1017
+
1018
+ <span class='type'>(<tt>String</tt>)</span>
1019
+
1020
+
1021
+
1022
+ &mdash;
1023
+ <div class='inline'><p>The cursor to obtain the next page of results.</p>
1024
+ </div>
1025
+
1026
+ </li>
1027
+
1028
+ </ul>
1029
+
1030
+ </div><table class="source_code">
1031
+ <tr>
1032
+ <td>
1033
+ <pre class="lines">
1034
+
1035
+
1036
+ 17
1037
+ 18
1038
+ 19
1039
+ 20
1040
+ 21
1041
+ 22
1042
+ 23
1043
+ 24
1044
+ 25
1045
+ 26
1046
+ 27
1047
+ 28
1048
+ 29
1049
+ 30
1050
+ 31
1051
+ 32
1052
+ 33
1053
+ 34
1054
+ 35
1055
+ 36
1056
+ 37
1057
+ 38
1058
+ 39
1059
+ 40
1060
+ 41
1061
+ 42
1062
+ 43
1063
+ 44
1064
+ 45
1065
+ 46
1066
+ 47
1067
+ 48
1068
+ 49
1069
+ 50
1070
+ 51
1071
+ 52
1072
+ 53
1073
+ 54
1074
+ 55
1075
+ 56
1076
+ 57
1077
+ 58
1078
+ 59
1079
+ 60
1080
+ 61
1081
+ 62
1082
+ 63
1083
+ 64
1084
+ 65
1085
+ 66
1086
+ 67
1087
+ 68
1088
+ 69
1089
+ 70
1090
+ 71
1091
+ 72
1092
+ 73
1093
+ 74
1094
+ 75
1095
+ 76
1096
+ 77
1097
+ 78
1098
+ 79
1099
+ 80
1100
+ 81
1101
+ 82
1102
+ 83
1103
+ 84
1104
+ 85
1105
+ 86
1106
+ 87
1107
+ 88
1108
+ 89
1109
+ 90
1110
+ 91
1111
+ 92
1112
+ 93
1113
+ 94
1114
+ 95
1115
+ 96</pre>
1116
+ </td>
1117
+ <td>
1118
+ <pre class="code"><span class="info file"># File 'lib/pinterest/collection.rb', line 17</span>
1119
+
1120
+ <span class='kw'>class</span> <span class='const'><span class='object_link'><a href="" title="Pinterest::Collection (class)">Collection</a></span></span>
1121
+ <span class='id identifier rubyid_attr_reader'>attr_reader</span> <span class='symbol'>:records</span><span class='comma'>,</span> <span class='symbol'>:limit</span><span class='comma'>,</span> <span class='symbol'>:current_cursor</span><span class='comma'>,</span> <span class='symbol'>:next_cursor</span>
1122
+
1123
+ <span class='comment'># Creates a new collection. This class is for internal use.
1124
+ </span> <span class='comment'>#
1125
+ </span> <span class='comment'># @param raw_data [Hash] A raw response obtained by Pinterest API.
1126
+ </span> <span class='comment'># @param cursor [String] The current cursor.
1127
+ </span> <span class='comment'># @param limit [Fixnum] The maximum number of records to obtain from Pinterest API.
1128
+ </span> <span class='comment'># @param record_creator [Proc] The code to trasform each raw record in a object.
1129
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_raw_data'>raw_data</span><span class='comma'>,</span> <span class='id identifier rubyid_cursor'>cursor</span><span class='comma'>,</span> <span class='id identifier rubyid_limit'>limit</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_record_creator'>record_creator</span><span class='rparen'>)</span>
1130
+ <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>raw_data must be an Hash.</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Hash</span><span class='rparen'>)</span>
1131
+ <span class='id identifier rubyid_record_creator'>record_creator</span> <span class='op'>||=</span> <span class='tlambda'>-&gt;</span><span class='lparen'>(</span><span class='id identifier rubyid_record'>record</span><span class='rparen'>)</span> <span class='tlambeg'>{</span> <span class='id identifier rubyid_record'>record</span> <span class='rbrace'>}</span>
1132
+
1133
+ <span class='ivar'>@limit</span> <span class='op'>=</span> <span class='id identifier rubyid_limit'>limit</span>
1134
+ <span class='ivar'>@current_cursor</span> <span class='op'>=</span> <span class='id identifier rubyid_cursor'>cursor</span>
1135
+ <span class='ivar'>@next_cursor</span> <span class='op'>=</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>page</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cursor</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>page</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>page</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cursor</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span>
1136
+ <span class='ivar'>@records</span> <span class='op'>=</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>data</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_record_creator'>record_creator</span><span class='rparen'>)</span>
1137
+ <span class='kw'>end</span>
1138
+
1139
+ <span class='comment'># Returns a object from the collection.
1140
+ </span> <span class='comment'>#
1141
+ </span> <span class='comment'># @param index [Fixnum] The index to get.
1142
+ </span> <span class='kw'>def</span> <span class='op'>[]</span><span class='lparen'>(</span><span class='id identifier rubyid_index'>index</span><span class='rparen'>)</span>
1143
+ <span class='id identifier rubyid_records'>records</span><span class='lbracket'>[</span><span class='id identifier rubyid_index'>index</span><span class='rbracket'>]</span>
1144
+ <span class='kw'>end</span>
1145
+
1146
+ <span class='comment'># Returns the size of the collection.
1147
+ </span> <span class='comment'>#
1148
+ </span> <span class='comment'># @return [Fixnum] The size of the collection.
1149
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_size'>size</span>
1150
+ <span class='id identifier rubyid_records'>records</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span>
1151
+ <span class='kw'>end</span>
1152
+
1153
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:count</span><span class='comma'>,</span> <span class='symbol'>:size</span>
1154
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:length</span><span class='comma'>,</span> <span class='symbol'>:size</span>
1155
+
1156
+ <span class='comment'># Returns the current page cursor.
1157
+ </span> <span class='comment'>#
1158
+ </span> <span class='comment'># @return [String] The current page cursor.
1159
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_current_page'>current_page</span>
1160
+ <span class='id identifier rubyid_current_cursor'>current_cursor</span>
1161
+ <span class='kw'>end</span>
1162
+
1163
+ <span class='comment'># Returns the next page cursor.
1164
+ </span> <span class='comment'>#
1165
+ </span> <span class='comment'># @return [String] The next page cursor.
1166
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_next_page'>next_page</span>
1167
+ <span class='id identifier rubyid_next_cursor'>next_cursor</span>
1168
+ <span class='kw'>end</span>
1169
+
1170
+ <span class='comment'># Checks if the collection is empty.
1171
+ </span> <span class='comment'>#
1172
+ </span> <span class='comment'># @return [Boolean] `true` if the collection is empty, `false` otherwise.
1173
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_empty?'>empty?</span>
1174
+ <span class='id identifier rubyid_records'>records</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
1175
+ <span class='kw'>end</span>
1176
+
1177
+ <span class='comment'># Checks if the collection has a next page.
1178
+ </span> <span class='comment'>#
1179
+ </span> <span class='comment'># @return [Boolean] `true` if the collection has a next page, `false` otherwise.
1180
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_next?'>next?</span>
1181
+ <span class='op'>!</span><span class='id identifier rubyid_next_cursor'>next_cursor</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
1182
+ <span class='kw'>end</span>
1183
+
1184
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:next_page?</span><span class='comma'>,</span> <span class='symbol'>:next?</span>
1185
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:eof?</span><span class='comma'>,</span> <span class='symbol'>:next?</span>
1186
+
1187
+ <span class='comment'># Serialize the collection as a Hash that can be serialized as JSON.
1188
+ </span> <span class='comment'>#
1189
+ </span> <span class='comment'># @param options [Hash] The options to use to serialize.
1190
+ </span> <span class='comment'># @return [Hash] The serialized collection.
1191
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
1192
+ <span class='lbrace'>{</span>
1193
+ <span class='label'>records:</span> <span class='id identifier rubyid_records'>records</span><span class='period'>.</span><span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span><span class='comma'>,</span>
1194
+ <span class='label'>limit:</span> <span class='id identifier rubyid_limit'>limit</span><span class='comma'>,</span>
1195
+ <span class='label'>current_cursor:</span> <span class='id identifier rubyid_current_cursor'>current_cursor</span><span class='comma'>,</span>
1196
+ <span class='label'>next_cursor:</span> <span class='id identifier rubyid_next_cursor'>next_cursor</span>
1197
+ <span class='rbrace'>}</span>
1198
+ <span class='kw'>end</span>
1199
+ <span class='kw'>end</span></pre>
1200
+ </td>
1201
+ </tr>
1202
+ </table>
1203
+ </div>
1204
+
1205
+
1206
+ <span id="records=-instance_method"></span>
1207
+ <div class="method_details ">
1208
+ <h3 class="signature " id="records-instance_method">
1209
+
1210
+ #<strong>records</strong> &#x21d2; <tt><span class='object_link'><a href="Entity.html" title="Pinterest::Entity (class)">Pinterest::Entity</a></span></tt>
1211
+
1212
+
1213
+
1214
+
1215
+
1216
+ </h3><div class="docstring">
1217
+ <div class="discussion">
1218
+ <p>Returns A list of objects.</p>
1219
+
1220
+
1221
+ </div>
1222
+ </div>
1223
+ <div class="tags">
1224
+
1225
+ <p class="tag_title">Returns:</p>
1226
+ <ul class="return">
1227
+
1228
+ <li>
1229
+
1230
+
1231
+ <span class='type'>(<tt><span class='object_link'><a href="Entity.html" title="Pinterest::Entity (class)">Pinterest::Entity</a></span></tt>)</span>
1232
+
1233
+
1234
+
1235
+ &mdash;
1236
+ <div class='inline'><p>A list of objects.</p>
1237
+ </div>
1238
+
1239
+ </li>
1240
+
1241
+ </ul>
1242
+
1243
+ </div><table class="source_code">
1244
+ <tr>
1245
+ <td>
1246
+ <pre class="lines">
1247
+
1248
+
1249
+ 17
1250
+ 18
1251
+ 19
1252
+ 20
1253
+ 21
1254
+ 22
1255
+ 23
1256
+ 24
1257
+ 25
1258
+ 26
1259
+ 27
1260
+ 28
1261
+ 29
1262
+ 30
1263
+ 31
1264
+ 32
1265
+ 33
1266
+ 34
1267
+ 35
1268
+ 36
1269
+ 37
1270
+ 38
1271
+ 39
1272
+ 40
1273
+ 41
1274
+ 42
1275
+ 43
1276
+ 44
1277
+ 45
1278
+ 46
1279
+ 47
1280
+ 48
1281
+ 49
1282
+ 50
1283
+ 51
1284
+ 52
1285
+ 53
1286
+ 54
1287
+ 55
1288
+ 56
1289
+ 57
1290
+ 58
1291
+ 59
1292
+ 60
1293
+ 61
1294
+ 62
1295
+ 63
1296
+ 64
1297
+ 65
1298
+ 66
1299
+ 67
1300
+ 68
1301
+ 69
1302
+ 70
1303
+ 71
1304
+ 72
1305
+ 73
1306
+ 74
1307
+ 75
1308
+ 76
1309
+ 77
1310
+ 78
1311
+ 79
1312
+ 80
1313
+ 81
1314
+ 82
1315
+ 83
1316
+ 84
1317
+ 85
1318
+ 86
1319
+ 87
1320
+ 88
1321
+ 89
1322
+ 90
1323
+ 91
1324
+ 92
1325
+ 93
1326
+ 94
1327
+ 95
1328
+ 96</pre>
1329
+ </td>
1330
+ <td>
1331
+ <pre class="code"><span class="info file"># File 'lib/pinterest/collection.rb', line 17</span>
1332
+
1333
+ <span class='kw'>class</span> <span class='const'><span class='object_link'><a href="" title="Pinterest::Collection (class)">Collection</a></span></span>
1334
+ <span class='id identifier rubyid_attr_reader'>attr_reader</span> <span class='symbol'>:records</span><span class='comma'>,</span> <span class='symbol'>:limit</span><span class='comma'>,</span> <span class='symbol'>:current_cursor</span><span class='comma'>,</span> <span class='symbol'>:next_cursor</span>
1335
+
1336
+ <span class='comment'># Creates a new collection. This class is for internal use.
1337
+ </span> <span class='comment'>#
1338
+ </span> <span class='comment'># @param raw_data [Hash] A raw response obtained by Pinterest API.
1339
+ </span> <span class='comment'># @param cursor [String] The current cursor.
1340
+ </span> <span class='comment'># @param limit [Fixnum] The maximum number of records to obtain from Pinterest API.
1341
+ </span> <span class='comment'># @param record_creator [Proc] The code to trasform each raw record in a object.
1342
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_raw_data'>raw_data</span><span class='comma'>,</span> <span class='id identifier rubyid_cursor'>cursor</span><span class='comma'>,</span> <span class='id identifier rubyid_limit'>limit</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_record_creator'>record_creator</span><span class='rparen'>)</span>
1343
+ <span class='id identifier rubyid_raise'>raise</span><span class='lparen'>(</span><span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>raw_data must be an Hash.</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Hash</span><span class='rparen'>)</span>
1344
+ <span class='id identifier rubyid_record_creator'>record_creator</span> <span class='op'>||=</span> <span class='tlambda'>-&gt;</span><span class='lparen'>(</span><span class='id identifier rubyid_record'>record</span><span class='rparen'>)</span> <span class='tlambeg'>{</span> <span class='id identifier rubyid_record'>record</span> <span class='rbrace'>}</span>
1345
+
1346
+ <span class='ivar'>@limit</span> <span class='op'>=</span> <span class='id identifier rubyid_limit'>limit</span>
1347
+ <span class='ivar'>@current_cursor</span> <span class='op'>=</span> <span class='id identifier rubyid_cursor'>cursor</span>
1348
+ <span class='ivar'>@next_cursor</span> <span class='op'>=</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>page</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cursor</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>page</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>page</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cursor</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span>
1349
+ <span class='ivar'>@records</span> <span class='op'>=</span> <span class='id identifier rubyid_raw_data'>raw_data</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>data</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_record_creator'>record_creator</span><span class='rparen'>)</span>
1350
+ <span class='kw'>end</span>
1351
+
1352
+ <span class='comment'># Returns a object from the collection.
1353
+ </span> <span class='comment'>#
1354
+ </span> <span class='comment'># @param index [Fixnum] The index to get.
1355
+ </span> <span class='kw'>def</span> <span class='op'>[]</span><span class='lparen'>(</span><span class='id identifier rubyid_index'>index</span><span class='rparen'>)</span>
1356
+ <span class='id identifier rubyid_records'>records</span><span class='lbracket'>[</span><span class='id identifier rubyid_index'>index</span><span class='rbracket'>]</span>
1357
+ <span class='kw'>end</span>
1358
+
1359
+ <span class='comment'># Returns the size of the collection.
1360
+ </span> <span class='comment'>#
1361
+ </span> <span class='comment'># @return [Fixnum] The size of the collection.
1362
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_size'>size</span>
1363
+ <span class='id identifier rubyid_records'>records</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span>
1364
+ <span class='kw'>end</span>
1365
+
1366
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:count</span><span class='comma'>,</span> <span class='symbol'>:size</span>
1367
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:length</span><span class='comma'>,</span> <span class='symbol'>:size</span>
1368
+
1369
+ <span class='comment'># Returns the current page cursor.
1370
+ </span> <span class='comment'>#
1371
+ </span> <span class='comment'># @return [String] The current page cursor.
1372
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_current_page'>current_page</span>
1373
+ <span class='id identifier rubyid_current_cursor'>current_cursor</span>
1374
+ <span class='kw'>end</span>
1375
+
1376
+ <span class='comment'># Returns the next page cursor.
1377
+ </span> <span class='comment'>#
1378
+ </span> <span class='comment'># @return [String] The next page cursor.
1379
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_next_page'>next_page</span>
1380
+ <span class='id identifier rubyid_next_cursor'>next_cursor</span>
1381
+ <span class='kw'>end</span>
1382
+
1383
+ <span class='comment'># Checks if the collection is empty.
1384
+ </span> <span class='comment'>#
1385
+ </span> <span class='comment'># @return [Boolean] `true` if the collection is empty, `false` otherwise.
1386
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_empty?'>empty?</span>
1387
+ <span class='id identifier rubyid_records'>records</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
1388
+ <span class='kw'>end</span>
1389
+
1390
+ <span class='comment'># Checks if the collection has a next page.
1391
+ </span> <span class='comment'>#
1392
+ </span> <span class='comment'># @return [Boolean] `true` if the collection has a next page, `false` otherwise.
1393
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_next?'>next?</span>
1394
+ <span class='op'>!</span><span class='id identifier rubyid_next_cursor'>next_cursor</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
1395
+ <span class='kw'>end</span>
1396
+
1397
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:next_page?</span><span class='comma'>,</span> <span class='symbol'>:next?</span>
1398
+ <span class='id identifier rubyid_alias_method'>alias_method</span> <span class='symbol'>:eof?</span><span class='comma'>,</span> <span class='symbol'>:next?</span>
1399
+
1400
+ <span class='comment'># Serialize the collection as a Hash that can be serialized as JSON.
1401
+ </span> <span class='comment'>#
1402
+ </span> <span class='comment'># @param options [Hash] The options to use to serialize.
1403
+ </span> <span class='comment'># @return [Hash] The serialized collection.
1404
+ </span> <span class='kw'>def</span> <span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
1405
+ <span class='lbrace'>{</span>
1406
+ <span class='label'>records:</span> <span class='id identifier rubyid_records'>records</span><span class='period'>.</span><span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span><span class='comma'>,</span>
1407
+ <span class='label'>limit:</span> <span class='id identifier rubyid_limit'>limit</span><span class='comma'>,</span>
1408
+ <span class='label'>current_cursor:</span> <span class='id identifier rubyid_current_cursor'>current_cursor</span><span class='comma'>,</span>
1409
+ <span class='label'>next_cursor:</span> <span class='id identifier rubyid_next_cursor'>next_cursor</span>
1410
+ <span class='rbrace'>}</span>
1411
+ <span class='kw'>end</span>
1412
+ <span class='kw'>end</span></pre>
1413
+ </td>
1414
+ </tr>
1415
+ </table>
1416
+ </div>
1417
+
1418
+ </div>
1419
+
1420
+
1421
+ <div id="instance_method_details" class="method_details_list">
1422
+ <h2>Instance Method Details</h2>
1423
+
1424
+
1425
+ <div class="method_details first">
1426
+ <h3 class="signature first" id="[]-instance_method">
1427
+
1428
+ #<strong>[]</strong>(index) &#x21d2; <tt>Object</tt>
1429
+
1430
+
1431
+
1432
+
1433
+
1434
+ </h3><div class="docstring">
1435
+ <div class="discussion">
1436
+ <p>Returns a object from the collection.</p>
1437
+
1438
+
1439
+ </div>
1440
+ </div>
1441
+ <div class="tags">
1442
+ <p class="tag_title">Parameters:</p>
1443
+ <ul class="param">
1444
+
1445
+ <li>
1446
+
1447
+ <span class='name'>index</span>
1448
+
1449
+
1450
+ <span class='type'>(<tt>Fixnum</tt>)</span>
1451
+
1452
+
1453
+
1454
+ &mdash;
1455
+ <div class='inline'><p>The index to get.</p>
1456
+ </div>
1457
+
1458
+ </li>
1459
+
1460
+ </ul>
1461
+
1462
+
1463
+ </div><table class="source_code">
1464
+ <tr>
1465
+ <td>
1466
+ <pre class="lines">
1467
+
1468
+
1469
+ 39
1470
+ 40
1471
+ 41</pre>
1472
+ </td>
1473
+ <td>
1474
+ <pre class="code"><span class="info file"># File 'lib/pinterest/collection.rb', line 39</span>
1475
+
1476
+ <span class='kw'>def</span> <span class='op'>[]</span><span class='lparen'>(</span><span class='id identifier rubyid_index'>index</span><span class='rparen'>)</span>
1477
+ <span class='id identifier rubyid_records'>records</span><span class='lbracket'>[</span><span class='id identifier rubyid_index'>index</span><span class='rbracket'>]</span>
1478
+ <span class='kw'>end</span></pre>
1479
+ </td>
1480
+ </tr>
1481
+ </table>
1482
+ </div>
1483
+
1484
+ <div class="method_details ">
1485
+ <h3 class="signature " id="as_json-instance_method">
1486
+
1487
+ #<strong>as_json</strong>(options = {}) &#x21d2; <tt>Hash</tt>
1488
+
1489
+
1490
+
1491
+
1492
+
1493
+ </h3><div class="docstring">
1494
+ <div class="discussion">
1495
+ <p>Serialize the collection as a Hash that can be serialized as JSON.</p>
1496
+
1497
+
1498
+ </div>
1499
+ </div>
1500
+ <div class="tags">
1501
+ <p class="tag_title">Parameters:</p>
1502
+ <ul class="param">
1503
+
1504
+ <li>
1505
+
1506
+ <span class='name'>options</span>
1507
+
1508
+
1509
+ <span class='type'>(<tt>Hash</tt>)</span>
1510
+
1511
+
1512
+ <em class="default">(defaults to: <tt>{}</tt>)</em>
1513
+
1514
+
1515
+ &mdash;
1516
+ <div class='inline'><p>The options to use to serialize.</p>
1517
+ </div>
1518
+
1519
+ </li>
1520
+
1521
+ </ul>
1522
+
1523
+ <p class="tag_title">Returns:</p>
1524
+ <ul class="return">
1525
+
1526
+ <li>
1527
+
1528
+
1529
+ <span class='type'>(<tt>Hash</tt>)</span>
1530
+
1531
+
1532
+
1533
+ &mdash;
1534
+ <div class='inline'><p>The serialized collection.</p>
1535
+ </div>
1536
+
1537
+ </li>
1538
+
1539
+ </ul>
1540
+
1541
+ </div><table class="source_code">
1542
+ <tr>
1543
+ <td>
1544
+ <pre class="lines">
1545
+
1546
+
1547
+ 88
1548
+ 89
1549
+ 90
1550
+ 91
1551
+ 92
1552
+ 93
1553
+ 94
1554
+ 95</pre>
1555
+ </td>
1556
+ <td>
1557
+ <pre class="code"><span class="info file"># File 'lib/pinterest/collection.rb', line 88</span>
1558
+
1559
+ <span class='kw'>def</span> <span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
1560
+ <span class='lbrace'>{</span>
1561
+ <span class='label'>records:</span> <span class='id identifier rubyid_records'>records</span><span class='period'>.</span><span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span><span class='comma'>,</span>
1562
+ <span class='label'>limit:</span> <span class='id identifier rubyid_limit'>limit</span><span class='comma'>,</span>
1563
+ <span class='label'>current_cursor:</span> <span class='id identifier rubyid_current_cursor'>current_cursor</span><span class='comma'>,</span>
1564
+ <span class='label'>next_cursor:</span> <span class='id identifier rubyid_next_cursor'>next_cursor</span>
1565
+ <span class='rbrace'>}</span>
1566
+ <span class='kw'>end</span></pre>
1567
+ </td>
1568
+ </tr>
1569
+ </table>
1570
+ </div>
1571
+
1572
+ <div class="method_details ">
1573
+ <h3 class="signature " id="current_page-instance_method">
1574
+
1575
+ #<strong>current_page</strong> &#x21d2; <tt>String</tt>
1576
+
1577
+
1578
+
1579
+
1580
+
1581
+ </h3><div class="docstring">
1582
+ <div class="discussion">
1583
+ <p>Returns the current page cursor.</p>
1584
+
1585
+
1586
+ </div>
1587
+ </div>
1588
+ <div class="tags">
1589
+
1590
+ <p class="tag_title">Returns:</p>
1591
+ <ul class="return">
1592
+
1593
+ <li>
1594
+
1595
+
1596
+ <span class='type'>(<tt>String</tt>)</span>
1597
+
1598
+
1599
+
1600
+ &mdash;
1601
+ <div class='inline'><p>The current page cursor.</p>
1602
+ </div>
1603
+
1604
+ </li>
1605
+
1606
+ </ul>
1607
+
1608
+ </div><table class="source_code">
1609
+ <tr>
1610
+ <td>
1611
+ <pre class="lines">
1612
+
1613
+
1614
+ 56
1615
+ 57
1616
+ 58</pre>
1617
+ </td>
1618
+ <td>
1619
+ <pre class="code"><span class="info file"># File 'lib/pinterest/collection.rb', line 56</span>
1620
+
1621
+ <span class='kw'>def</span> <span class='id identifier rubyid_current_page'>current_page</span>
1622
+ <span class='id identifier rubyid_current_cursor'>current_cursor</span>
1623
+ <span class='kw'>end</span></pre>
1624
+ </td>
1625
+ </tr>
1626
+ </table>
1627
+ </div>
1628
+
1629
+ <div class="method_details ">
1630
+ <h3 class="signature " id="empty?-instance_method">
1631
+
1632
+ #<strong>empty?</strong> &#x21d2; <tt>Boolean</tt>
1633
+
1634
+
1635
+
1636
+
1637
+
1638
+ </h3><div class="docstring">
1639
+ <div class="discussion">
1640
+ <p>Checks if the collection is empty.</p>
1641
+
1642
+
1643
+ </div>
1644
+ </div>
1645
+ <div class="tags">
1646
+
1647
+ <p class="tag_title">Returns:</p>
1648
+ <ul class="return">
1649
+
1650
+ <li>
1651
+
1652
+
1653
+ <span class='type'>(<tt>Boolean</tt>)</span>
1654
+
1655
+
1656
+
1657
+ &mdash;
1658
+ <div class='inline'><p><code>true</code> if the collection is empty, <code>false</code> otherwise.</p>
1659
+ </div>
1660
+
1661
+ </li>
1662
+
1663
+ </ul>
1664
+
1665
+ </div><table class="source_code">
1666
+ <tr>
1667
+ <td>
1668
+ <pre class="lines">
1669
+
1670
+
1671
+ 70
1672
+ 71
1673
+ 72</pre>
1674
+ </td>
1675
+ <td>
1676
+ <pre class="code"><span class="info file"># File 'lib/pinterest/collection.rb', line 70</span>
1677
+
1678
+ <span class='kw'>def</span> <span class='id identifier rubyid_empty?'>empty?</span>
1679
+ <span class='id identifier rubyid_records'>records</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
1680
+ <span class='kw'>end</span></pre>
1681
+ </td>
1682
+ </tr>
1683
+ </table>
1684
+ </div>
1685
+
1686
+ <div class="method_details ">
1687
+ <h3 class="signature " id="next?-instance_method">
1688
+
1689
+ #<strong>next?</strong> &#x21d2; <tt>Boolean</tt>
1690
+
1691
+
1692
+
1693
+ <span class="aliases">Also known as:
1694
+ <span class="names"><span id='next_page?-instance_method'>next_page?</span>, <span id='eof?-instance_method'>eof?</span></span>
1695
+ </span>
1696
+
1697
+
1698
+
1699
+ </h3><div class="docstring">
1700
+ <div class="discussion">
1701
+ <p>Checks if the collection has a next page.</p>
1702
+
1703
+
1704
+ </div>
1705
+ </div>
1706
+ <div class="tags">
1707
+
1708
+ <p class="tag_title">Returns:</p>
1709
+ <ul class="return">
1710
+
1711
+ <li>
1712
+
1713
+
1714
+ <span class='type'>(<tt>Boolean</tt>)</span>
1715
+
1716
+
1717
+
1718
+ &mdash;
1719
+ <div class='inline'><p><code>true</code> if the collection has a next page, <code>false</code> otherwise.</p>
1720
+ </div>
1721
+
1722
+ </li>
1723
+
1724
+ </ul>
1725
+
1726
+ </div><table class="source_code">
1727
+ <tr>
1728
+ <td>
1729
+ <pre class="lines">
1730
+
1731
+
1732
+ 77
1733
+ 78
1734
+ 79</pre>
1735
+ </td>
1736
+ <td>
1737
+ <pre class="code"><span class="info file"># File 'lib/pinterest/collection.rb', line 77</span>
1738
+
1739
+ <span class='kw'>def</span> <span class='id identifier rubyid_next?'>next?</span>
1740
+ <span class='op'>!</span><span class='id identifier rubyid_next_cursor'>next_cursor</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
1741
+ <span class='kw'>end</span></pre>
1742
+ </td>
1743
+ </tr>
1744
+ </table>
1745
+ </div>
1746
+
1747
+ <div class="method_details ">
1748
+ <h3 class="signature " id="next_page-instance_method">
1749
+
1750
+ #<strong>next_page</strong> &#x21d2; <tt>String</tt>
1751
+
1752
+
1753
+
1754
+
1755
+
1756
+ </h3><div class="docstring">
1757
+ <div class="discussion">
1758
+ <p>Returns the next page cursor.</p>
1759
+
1760
+
1761
+ </div>
1762
+ </div>
1763
+ <div class="tags">
1764
+
1765
+ <p class="tag_title">Returns:</p>
1766
+ <ul class="return">
1767
+
1768
+ <li>
1769
+
1770
+
1771
+ <span class='type'>(<tt>String</tt>)</span>
1772
+
1773
+
1774
+
1775
+ &mdash;
1776
+ <div class='inline'><p>The next page cursor.</p>
1777
+ </div>
1778
+
1779
+ </li>
1780
+
1781
+ </ul>
1782
+
1783
+ </div><table class="source_code">
1784
+ <tr>
1785
+ <td>
1786
+ <pre class="lines">
1787
+
1788
+
1789
+ 63
1790
+ 64
1791
+ 65</pre>
1792
+ </td>
1793
+ <td>
1794
+ <pre class="code"><span class="info file"># File 'lib/pinterest/collection.rb', line 63</span>
1795
+
1796
+ <span class='kw'>def</span> <span class='id identifier rubyid_next_page'>next_page</span>
1797
+ <span class='id identifier rubyid_next_cursor'>next_cursor</span>
1798
+ <span class='kw'>end</span></pre>
1799
+ </td>
1800
+ </tr>
1801
+ </table>
1802
+ </div>
1803
+
1804
+ <div class="method_details ">
1805
+ <h3 class="signature " id="size-instance_method">
1806
+
1807
+ #<strong>size</strong> &#x21d2; <tt>Fixnum</tt>
1808
+
1809
+
1810
+
1811
+ <span class="aliases">Also known as:
1812
+ <span class="names"><span id='count-instance_method'>count</span>, <span id='length-instance_method'>length</span></span>
1813
+ </span>
1814
+
1815
+
1816
+
1817
+ </h3><div class="docstring">
1818
+ <div class="discussion">
1819
+ <p>Returns the size of the collection.</p>
1820
+
1821
+
1822
+ </div>
1823
+ </div>
1824
+ <div class="tags">
1825
+
1826
+ <p class="tag_title">Returns:</p>
1827
+ <ul class="return">
1828
+
1829
+ <li>
1830
+
1831
+
1832
+ <span class='type'>(<tt>Fixnum</tt>)</span>
1833
+
1834
+
1835
+
1836
+ &mdash;
1837
+ <div class='inline'><p>The size of the collection.</p>
1838
+ </div>
1839
+
1840
+ </li>
1841
+
1842
+ </ul>
1843
+
1844
+ </div><table class="source_code">
1845
+ <tr>
1846
+ <td>
1847
+ <pre class="lines">
1848
+
1849
+
1850
+ 46
1851
+ 47
1852
+ 48</pre>
1853
+ </td>
1854
+ <td>
1855
+ <pre class="code"><span class="info file"># File 'lib/pinterest/collection.rb', line 46</span>
1856
+
1857
+ <span class='kw'>def</span> <span class='id identifier rubyid_size'>size</span>
1858
+ <span class='id identifier rubyid_records'>records</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span>
1859
+ <span class='kw'>end</span></pre>
1860
+ </td>
1861
+ </tr>
1862
+ </table>
1863
+ </div>
1864
+
1865
+ </div>
1866
+
1867
+ </div>
1868
+
1869
+ <div id="footer">
1870
+ Generated on Thu Jan 12 16:28:12 2017 by
1871
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1872
+ 0.9.7 (ruby-2.3.0).
1873
+ </div>
1874
+
1875
+ </div>
1876
+ </body>
1877
+ </html>