lunchmoney 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (142) hide show
  1. checksums.yaml +7 -0
  2. data/.DS_Store +0 -0
  3. data/.github/dependabot.yml +18 -0
  4. data/.github/workflows/build_and_publish_yard_docs.yml +47 -0
  5. data/.github/workflows/ci.yml +58 -0
  6. data/.github/workflows/dependabot-rbi-updater.yml +43 -0
  7. data/.github/workflows/publish_gem.yml +31 -0
  8. data/.gitignore +62 -0
  9. data/.rubocop.yml +45 -0
  10. data/.ruby-version +1 -0
  11. data/.toys/.toys.rb +10 -0
  12. data/.toys/ci.rb +22 -0
  13. data/.toys/rbi.rb +60 -0
  14. data/.toys/rubocop.rb +10 -0
  15. data/.toys/spoom.rb +15 -0
  16. data/.toys/typecheck.rb +5 -0
  17. data/.yardopts +2 -0
  18. data/Appraisals +22 -0
  19. data/Gemfile +25 -0
  20. data/Gemfile.lock +174 -0
  21. data/LICENSE +21 -0
  22. data/README.md +57 -0
  23. data/bin/console +16 -0
  24. data/bin/rubocop +27 -0
  25. data/bin/setup +8 -0
  26. data/bin/spoom +27 -0
  27. data/bin/srb +27 -0
  28. data/bin/tapioca +27 -0
  29. data/bin/toys +27 -0
  30. data/bin/yard +27 -0
  31. data/lib/lunchmoney/api.rb +147 -0
  32. data/lib/lunchmoney/api_call.rb +109 -0
  33. data/lib/lunchmoney/assets/asset.rb +89 -0
  34. data/lib/lunchmoney/assets/asset_calls.rb +96 -0
  35. data/lib/lunchmoney/budget/budget.rb +74 -0
  36. data/lib/lunchmoney/budget/budget_calls.rb +82 -0
  37. data/lib/lunchmoney/budget/config.rb +38 -0
  38. data/lib/lunchmoney/budget/data.rb +42 -0
  39. data/lib/lunchmoney/categories/category/category.rb +52 -0
  40. data/lib/lunchmoney/categories/category/child_category.rb +42 -0
  41. data/lib/lunchmoney/categories/category_calls.rb +195 -0
  42. data/lib/lunchmoney/configuration.rb +26 -0
  43. data/lib/lunchmoney/crypto/crypto/crypto.rb +43 -0
  44. data/lib/lunchmoney/crypto/crypto/crypto_base.rb +65 -0
  45. data/lib/lunchmoney/crypto/crypto_calls.rb +49 -0
  46. data/lib/lunchmoney/data_object.rb +25 -0
  47. data/lib/lunchmoney/errors.rb +19 -0
  48. data/lib/lunchmoney/exceptions.rb +19 -0
  49. data/lib/lunchmoney/plaid_accounts/plaid_account.rb +73 -0
  50. data/lib/lunchmoney/plaid_accounts/plaid_account_calls.rb +38 -0
  51. data/lib/lunchmoney/recurring_expenses/recurring_expense/recurring_expense.rb +65 -0
  52. data/lib/lunchmoney/recurring_expenses/recurring_expense/recurring_expense_base.rb +29 -0
  53. data/lib/lunchmoney/recurring_expenses/recurring_expense_calls.rb +28 -0
  54. data/lib/lunchmoney/tags/tag/tag.rb +20 -0
  55. data/lib/lunchmoney/tags/tag/tag_base.rb +21 -0
  56. data/lib/lunchmoney/tags/tag_calls.rb +20 -0
  57. data/lib/lunchmoney/transactions/transaction/child_transaction.rb +31 -0
  58. data/lib/lunchmoney/transactions/transaction/split.rb +24 -0
  59. data/lib/lunchmoney/transactions/transaction/transaction.rb +156 -0
  60. data/lib/lunchmoney/transactions/transaction/transaction_base.rb +52 -0
  61. data/lib/lunchmoney/transactions/transaction/transaction_modification_base.rb +30 -0
  62. data/lib/lunchmoney/transactions/transaction/update_transaction.rb +43 -0
  63. data/lib/lunchmoney/transactions/transaction_calls.rb +218 -0
  64. data/lib/lunchmoney/user/user.rb +36 -0
  65. data/lib/lunchmoney/user/user_calls.rb +19 -0
  66. data/lib/lunchmoney/validators.rb +43 -0
  67. data/lib/lunchmoney/version.rb +7 -0
  68. data/lib/lunchmoney.rb +54 -0
  69. data/lunchmoney.gemspec +34 -0
  70. data/sorbet/config +5 -0
  71. data/sorbet/rbi/annotations/.gitattributes +1 -0
  72. data/sorbet/rbi/annotations/activesupport.rbi +410 -0
  73. data/sorbet/rbi/annotations/faraday.rbi +17 -0
  74. data/sorbet/rbi/annotations/mocha.rbi +34 -0
  75. data/sorbet/rbi/annotations/rainbow.rbi +269 -0
  76. data/sorbet/rbi/annotations/webmock.rbi +9 -0
  77. data/sorbet/rbi/dsl/.gitattributes +1 -0
  78. data/sorbet/rbi/dsl/active_support/callbacks.rbi +22 -0
  79. data/sorbet/rbi/gems/.gitattributes +1 -0
  80. data/sorbet/rbi/gems/activesupport@7.1.3.rbi +18004 -0
  81. data/sorbet/rbi/gems/addressable@2.8.6.rbi +1993 -0
  82. data/sorbet/rbi/gems/appraisal@2.5.0.rbi +621 -0
  83. data/sorbet/rbi/gems/ast@2.4.2.rbi +584 -0
  84. data/sorbet/rbi/gems/base64@0.2.0.rbi +508 -0
  85. data/sorbet/rbi/gems/bigdecimal@3.1.6.rbi +77 -0
  86. data/sorbet/rbi/gems/coderay@1.1.3.rbi +3426 -0
  87. data/sorbet/rbi/gems/concurrent-ruby@1.2.3.rbi +11590 -0
  88. data/sorbet/rbi/gems/connection_pool@2.4.1.rbi +8 -0
  89. data/sorbet/rbi/gems/crack@0.4.5.rbi +144 -0
  90. data/sorbet/rbi/gems/dotenv@2.8.1.rbi +234 -0
  91. data/sorbet/rbi/gems/drb@2.2.0.rbi +1346 -0
  92. data/sorbet/rbi/gems/erubi@1.12.0.rbi +145 -0
  93. data/sorbet/rbi/gems/faraday-net_http@3.1.0.rbi +146 -0
  94. data/sorbet/rbi/gems/faraday@2.9.0.rbi +2911 -0
  95. data/sorbet/rbi/gems/hashdiff@1.1.0.rbi +352 -0
  96. data/sorbet/rbi/gems/i18n@1.14.1.rbi +2325 -0
  97. data/sorbet/rbi/gems/json@2.7.1.rbi +1561 -0
  98. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +14237 -0
  99. data/sorbet/rbi/gems/method_source@1.0.0.rbi +272 -0
  100. data/sorbet/rbi/gems/minitest@5.21.2.rbi +2197 -0
  101. data/sorbet/rbi/gems/mocha@2.1.0.rbi +3934 -0
  102. data/sorbet/rbi/gems/mutex_m@0.2.0.rbi +93 -0
  103. data/sorbet/rbi/gems/net-http@0.4.1.rbi +4068 -0
  104. data/sorbet/rbi/gems/netrc@0.11.0.rbi +158 -0
  105. data/sorbet/rbi/gems/parallel@1.24.0.rbi +280 -0
  106. data/sorbet/rbi/gems/parser@3.3.0.5.rbi +5472 -0
  107. data/sorbet/rbi/gems/prettier_print@1.2.1.rbi +951 -0
  108. data/sorbet/rbi/gems/prism@0.19.0.rbi +29883 -0
  109. data/sorbet/rbi/gems/pry-sorbet@0.2.1.rbi +966 -0
  110. data/sorbet/rbi/gems/pry@0.14.2.rbi +10077 -0
  111. data/sorbet/rbi/gems/public_suffix@5.0.4.rbi +935 -0
  112. data/sorbet/rbi/gems/racc@1.7.3.rbi +161 -0
  113. data/sorbet/rbi/gems/rack@3.0.8.rbi +5183 -0
  114. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +402 -0
  115. data/sorbet/rbi/gems/rake@13.1.0.rbi +3027 -0
  116. data/sorbet/rbi/gems/rbi@0.1.6.rbi +2922 -0
  117. data/sorbet/rbi/gems/regexp_parser@2.9.0.rbi +3771 -0
  118. data/sorbet/rbi/gems/rexml@3.2.6.rbi +4781 -0
  119. data/sorbet/rbi/gems/rubocop-ast@1.30.0.rbi +7117 -0
  120. data/sorbet/rbi/gems/rubocop-minitest@0.34.5.rbi +2576 -0
  121. data/sorbet/rbi/gems/rubocop-rails@2.23.1.rbi +9175 -0
  122. data/sorbet/rbi/gems/rubocop-shopify@2.14.0.rbi +8 -0
  123. data/sorbet/rbi/gems/rubocop-sorbet@0.7.6.rbi +1510 -0
  124. data/sorbet/rbi/gems/rubocop@1.60.1.rbi +57356 -0
  125. data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +1317 -0
  126. data/sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi +8 -0
  127. data/sorbet/rbi/gems/spoom@1.2.4.rbi +3777 -0
  128. data/sorbet/rbi/gems/syntax_tree@6.2.0.rbi +23136 -0
  129. data/sorbet/rbi/gems/tapioca@0.12.0.rbi +3506 -0
  130. data/sorbet/rbi/gems/thor@1.3.0.rbi +4312 -0
  131. data/sorbet/rbi/gems/toys-core@0.15.4.rbi +9462 -0
  132. data/sorbet/rbi/gems/toys@0.15.4.rbi +243 -0
  133. data/sorbet/rbi/gems/tzinfo@2.0.6.rbi +5917 -0
  134. data/sorbet/rbi/gems/unicode-display_width@2.5.0.rbi +65 -0
  135. data/sorbet/rbi/gems/uri@0.13.0.rbi +2327 -0
  136. data/sorbet/rbi/gems/vcr@6.2.0.rbi +3036 -0
  137. data/sorbet/rbi/gems/webmock@3.19.1.rbi +1768 -0
  138. data/sorbet/rbi/gems/yard-sorbet@0.8.1.rbi +428 -0
  139. data/sorbet/rbi/gems/yard@0.9.34.rbi +18084 -0
  140. data/sorbet/shims/module.rbi +6 -0
  141. data/sorbet/tapioca/require.rb +10 -0
  142. metadata +228 -0
@@ -0,0 +1,352 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `hashdiff` gem.
5
+ # Please instead update this file by running `bin/tapioca gem hashdiff`.
6
+
7
+ # This module provides methods to diff two hash, patch and unpatch hash
8
+ #
9
+ # source://hashdiff//lib/hashdiff/util.rb#3
10
+ module Hashdiff
11
+ class << self
12
+ # Best diff two objects, which tries to generate the smallest change set using different similarity values.
13
+ #
14
+ # Hashdiff.best_diff is useful in case of comparing two objects which include similar hashes in arrays.
15
+ #
16
+ # @example
17
+ # a = {'x' => [{'a' => 1, 'c' => 3, 'e' => 5}, {'y' => 3}]}
18
+ # b = {'x' => [{'a' => 1, 'b' => 2, 'e' => 5}] }
19
+ # diff = Hashdiff.best_diff(a, b)
20
+ # diff.should == [['-', 'x[0].c', 3], ['+', 'x[0].b', 2], ['-', 'x[1].y', 3], ['-', 'x[1]', {}]]
21
+ # @param obj1 [Array, Hash]
22
+ # @param obj2 [Array, Hash]
23
+ # @param options [Hash] the options to use when comparing
24
+ # * :strict (Boolean) [true] whether numeric values will be compared on type as well as value. Set to false to allow comparing Integer, Float, BigDecimal to each other
25
+ # * :ignore_keys (Symbol, String or Array) [[]] a list of keys to ignore. No comparison is made for the specified key(s)
26
+ # * :indifferent (Boolean) [false] whether to treat hash keys indifferently. Set to true to ignore differences between symbol keys (ie. {a: 1} ~= {'a' => 1})
27
+ # * :delimiter (String) ['.'] the delimiter used when returning nested key references
28
+ # * :numeric_tolerance (Numeric) [0] should be a positive numeric value. Value by which numeric differences must be greater than. By default, numeric values are compared exactly; with the :tolerance option, the difference between numeric values must be greater than the given value.
29
+ # * :strip (Boolean) [false] whether or not to call #strip on strings before comparing
30
+ # * :array_path (Boolean) [false] whether to return the path references for nested values in an array, can be used for patch compatibility with non string keys.
31
+ # * :use_lcs (Boolean) [true] whether or not to use an implementation of the Longest common subsequence algorithm for comparing arrays, produces better diffs but is slower.
32
+ # @return [Array] an array of changes.
33
+ # e.g. [[ '+', 'a.b', '45' ], [ '-', 'a.c', '5' ], [ '~', 'a.x', '45', '63']]
34
+ # @since 0.0.1
35
+ # @yield [path, value1, value2] Optional block is used to compare each value, instead of default #==. If the block returns value other than true of false, then other specified comparison options will be used to do the comparison.
36
+ #
37
+ # source://hashdiff//lib/hashdiff/diff.rb#32
38
+ def best_diff(obj1, obj2, options = T.unsafe(nil), &block); end
39
+
40
+ # check if objects are comparable
41
+ #
42
+ # @private
43
+ # @return [Boolean]
44
+ #
45
+ # source://hashdiff//lib/hashdiff/util.rb#108
46
+ def comparable?(obj1, obj2, strict = T.unsafe(nil)); end
47
+
48
+ # check for equality or "closeness" within given tolerance
49
+ #
50
+ # @private
51
+ #
52
+ # source://hashdiff//lib/hashdiff/util.rb#86
53
+ def compare_values(obj1, obj2, options = T.unsafe(nil)); end
54
+
55
+ # count node differences
56
+ #
57
+ # @private
58
+ #
59
+ # source://hashdiff//lib/hashdiff/util.rb#25
60
+ def count_diff(diffs); end
61
+
62
+ # count total nodes for an object
63
+ #
64
+ # @private
65
+ #
66
+ # source://hashdiff//lib/hashdiff/util.rb#36
67
+ def count_nodes(obj); end
68
+
69
+ # try custom comparison
70
+ #
71
+ # @private
72
+ #
73
+ # source://hashdiff//lib/hashdiff/util.rb#119
74
+ def custom_compare(method, key, obj1, obj2); end
75
+
76
+ # decode property path into an array
77
+ # e.g. "a.b[3].c" => ['a', 'b', 3, 'c']
78
+ #
79
+ # @param path [String] Property-string
80
+ # @param delimiter [String] Property-string delimiter
81
+ # @private
82
+ #
83
+ # source://hashdiff//lib/hashdiff/util.rb#58
84
+ def decode_property_path(path, delimiter = T.unsafe(nil)); end
85
+
86
+ # Compute the diff of two hashes or arrays
87
+ #
88
+ # @example
89
+ # a = {"a" => 1, "b" => {"b1" => 1, "b2" =>2}}
90
+ # b = {"a" => 1, "b" => {}}
91
+ #
92
+ # diff = Hashdiff.diff(a, b)
93
+ # diff.should == [['-', 'b.b1', 1], ['-', 'b.b2', 2]]
94
+ # @param obj1 [Array, Hash]
95
+ # @param obj2 [Array, Hash]
96
+ # @param options [Hash] the options to use when comparing
97
+ # * :strict (Boolean) [true] whether numeric values will be compared on type as well as value. Set to false to allow comparing Integer, Float, BigDecimal to each other
98
+ # * :ignore_keys (Symbol, String or Array) [[]] a list of keys to ignore. No comparison is made for the specified key(s)
99
+ # * :indifferent (Boolean) [false] whether to treat hash keys indifferently. Set to true to ignore differences between symbol keys (ie. {a: 1} ~= {'a' => 1})
100
+ # * :similarity (Numeric) [0.8] should be between (0, 1]. Meaningful if there are similar hashes in arrays. See {best_diff}.
101
+ # * :delimiter (String) ['.'] the delimiter used when returning nested key references
102
+ # * :numeric_tolerance (Numeric) [0] should be a positive numeric value. Value by which numeric differences must be greater than. By default, numeric values are compared exactly; with the :tolerance option, the difference between numeric values must be greater than the given value.
103
+ # * :strip (Boolean) [false] whether or not to call #strip on strings before comparing
104
+ # * :array_path (Boolean) [false] whether to return the path references for nested values in an array, can be used for patch compatibility with non string keys.
105
+ # * :use_lcs (Boolean) [true] whether or not to use an implementation of the Longest common subsequence algorithm for comparing arrays, produces better diffs but is slower.
106
+ # @return [Array] an array of changes.
107
+ # e.g. [[ '+', 'a.b', '45' ], [ '-', 'a.c', '5' ], [ '~', 'a.x', '45', '63']]
108
+ # @since 0.0.1
109
+ # @yield [path, value1, value2] Optional block is used to compare each value, instead of default #==. If the block returns value other than true of false, then other specified comparison options will be used to do the comparison.
110
+ #
111
+ # source://hashdiff//lib/hashdiff/diff.rb#80
112
+ def diff(obj1, obj2, options = T.unsafe(nil), &block); end
113
+
114
+ # diff array using LCS algorithm
115
+ #
116
+ # @private
117
+ # @yield [links]
118
+ #
119
+ # source://hashdiff//lib/hashdiff/diff.rb#124
120
+ def diff_array_lcs(arraya, arrayb, options = T.unsafe(nil)); end
121
+
122
+ # caculate array difference using LCS algorithm
123
+ # http://en.wikipedia.org/wiki/Longest_common_subsequence_problem
124
+ #
125
+ # @private
126
+ #
127
+ # source://hashdiff//lib/hashdiff/lcs.rb#8
128
+ def lcs(arraya, arrayb, options = T.unsafe(nil)); end
129
+
130
+ # get the node of hash by given path parts
131
+ #
132
+ # @private
133
+ #
134
+ # source://hashdiff//lib/hashdiff/util.rb#75
135
+ def node(hash, parts); end
136
+
137
+ # Apply patch to object
138
+ #
139
+ # @param obj [Hash, Array] the object to be patched, can be an Array or a Hash
140
+ # @param changes [Array] e.g. [[ '+', 'a.b', '45' ], [ '-', 'a.c', '5' ], [ '~', 'a.x', '45', '63']]
141
+ # @param options [Hash] supports following keys:
142
+ # * :delimiter (String) ['.'] delimiter string for representing nested keys in changes array
143
+ # @return the object after patch
144
+ # @since 0.0.1
145
+ #
146
+ # source://hashdiff//lib/hashdiff/patch.rb#17
147
+ def patch!(obj, changes, options = T.unsafe(nil)); end
148
+
149
+ # source://hashdiff//lib/hashdiff/util.rb#137
150
+ def prefix_append_array_index(prefix, array_index, opts); end
151
+
152
+ # source://hashdiff//lib/hashdiff/util.rb#129
153
+ def prefix_append_key(prefix, key, opts); end
154
+
155
+ # judge whether two objects are similar
156
+ #
157
+ # @private
158
+ # @return [Boolean]
159
+ #
160
+ # source://hashdiff//lib/hashdiff/util.rb#7
161
+ def similar?(obja, objb, options = T.unsafe(nil)); end
162
+
163
+ # Unpatch an object
164
+ #
165
+ # @param obj [Hash, Array] the object to be unpatched, can be an Array or a Hash
166
+ # @param changes [Array] e.g. [[ '+', 'a.b', '45' ], [ '-', 'a.c', '5' ], [ '~', 'a.x', '45', '63']]
167
+ # @param options [Hash] supports following keys:
168
+ # * :delimiter (String) ['.'] delimiter string for representing nested keys in changes array
169
+ # @return the object after unpatch
170
+ # @since 0.0.1
171
+ #
172
+ # source://hashdiff//lib/hashdiff/patch.rb#58
173
+ def unpatch!(obj, changes, options = T.unsafe(nil)); end
174
+
175
+ private
176
+
177
+ # checks if both objects are Arrays or Hashes
178
+ #
179
+ # @private
180
+ # @return [Boolean]
181
+ #
182
+ # source://hashdiff//lib/hashdiff/util.rb#151
183
+ def any_hash_or_array?(obja, objb); end
184
+ end
185
+ end
186
+
187
+ # Used to compare hashes
188
+ #
189
+ # @private
190
+ #
191
+ # source://hashdiff//lib/hashdiff/compare_hashes.rb#6
192
+ class Hashdiff::CompareHashes
193
+ class << self
194
+ # source://hashdiff//lib/hashdiff/compare_hashes.rb#8
195
+ def call(obj1, obj2, opts = T.unsafe(nil)); end
196
+ end
197
+ end
198
+
199
+ # Used to compare arrays using the lcs algorithm
200
+ #
201
+ # @private
202
+ #
203
+ # source://hashdiff//lib/hashdiff/lcs_compare_arrays.rb#6
204
+ class Hashdiff::LcsCompareArrays
205
+ class << self
206
+ # source://hashdiff//lib/hashdiff/lcs_compare_arrays.rb#8
207
+ def call(obj1, obj2, opts = T.unsafe(nil)); end
208
+ end
209
+ end
210
+
211
+ # Used to compare arrays in a linear complexity, which produces longer diffs
212
+ # than using the lcs algorithm but is considerably faster
213
+ #
214
+ # @private
215
+ #
216
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#8
217
+ class Hashdiff::LinearCompareArray
218
+ # @return [LinearCompareArray] a new instance of LinearCompareArray
219
+ #
220
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#45
221
+ def initialize(old_array, new_array, options); end
222
+
223
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#14
224
+ def call; end
225
+
226
+ private
227
+
228
+ # Returns the value of attribute additions.
229
+ #
230
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#42
231
+ def additions; end
232
+
233
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#139
234
+ def append_addition(item, index); end
235
+
236
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#123
237
+ def append_addititions_before_match(match_index); end
238
+
239
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#144
240
+ def append_deletion(item, index); end
241
+
242
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#131
243
+ def append_deletions_before_match(match_index); end
244
+
245
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#149
246
+ def append_differences(difference); end
247
+
248
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#153
249
+ def changes; end
250
+
251
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#67
252
+ def compare_at_index; end
253
+
254
+ # Returns the value of attribute deletions.
255
+ #
256
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#42
257
+ def deletions; end
258
+
259
+ # Returns the value of attribute differences.
260
+ #
261
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#42
262
+ def differences; end
263
+
264
+ # Returns the value of attribute expected_additions.
265
+ #
266
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#43
267
+ def expected_additions; end
268
+
269
+ # Sets the attribute expected_additions
270
+ #
271
+ # @param value the value to set the attribute expected_additions to.
272
+ #
273
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#43
274
+ def expected_additions=(_arg0); end
275
+
276
+ # @return [Boolean]
277
+ #
278
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#59
279
+ def extra_items_in_new_array?; end
280
+
281
+ # @return [Boolean]
282
+ #
283
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#55
284
+ def extra_items_in_old_array?; end
285
+
286
+ # look ahead in the new array to see if the current item appears later
287
+ # thereby having new items added
288
+ #
289
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#89
290
+ def index_of_match_after_additions; end
291
+
292
+ # look ahead in the old array to see if the current item appears later
293
+ # thereby having items removed
294
+ #
295
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#107
296
+ def index_of_match_after_deletions; end
297
+
298
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#82
299
+ def item_difference(old_item, new_item, item_index); end
300
+
301
+ # @return [Boolean]
302
+ #
303
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#63
304
+ def iterated_through_both_arrays?; end
305
+
306
+ # Returns the value of attribute new_array.
307
+ #
308
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#42
309
+ def new_array; end
310
+
311
+ # Returns the value of attribute new_index.
312
+ #
313
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#43
314
+ def new_index; end
315
+
316
+ # Sets the attribute new_index
317
+ #
318
+ # @param value the value to set the attribute new_index to.
319
+ #
320
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#43
321
+ def new_index=(_arg0); end
322
+
323
+ # Returns the value of attribute old_array.
324
+ #
325
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#42
326
+ def old_array; end
327
+
328
+ # Returns the value of attribute old_index.
329
+ #
330
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#43
331
+ def old_index; end
332
+
333
+ # Sets the attribute old_index
334
+ #
335
+ # @param value the value to set the attribute old_index to.
336
+ #
337
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#43
338
+ def old_index=(_arg0); end
339
+
340
+ # Returns the value of attribute options.
341
+ #
342
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#42
343
+ def options; end
344
+
345
+ class << self
346
+ # source://hashdiff//lib/hashdiff/linear_compare_array.rb#9
347
+ def call(old_array, new_array, options = T.unsafe(nil)); end
348
+ end
349
+ end
350
+
351
+ # source://hashdiff//lib/hashdiff/version.rb#4
352
+ Hashdiff::VERSION = T.let(T.unsafe(nil), String)