omg-attrs 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 02ce08d9a45a81a1e6e21af0744aadcac77ce59013fc4337860002a7001551e4
4
- data.tar.gz: 3a8048e24bec33c37d70c1ac73c0c8b6c62a2ced7fd8dde8042fef4904ab6f4f
3
+ metadata.gz: b664a869fd5bf0f6fe29303ca872c4449e6734f6c0e4ad69a72f4933d9481585
4
+ data.tar.gz: 16eba8246a6b120ddcefb111678ececa6d5169ecfa93650cf92c97f20e94b6f2
5
5
  SHA512:
6
- metadata.gz: 4d060b165eb56a7dff83434896cbacbdb6ca0d031cabef97cfbf15b722c3ea4147b6b004918a544cbb72cf9e221626328cf0f5a8c9c4222ca674dfe2ae1a4ec1
7
- data.tar.gz: 822fb4378d650d8083c5bcd92b7c8057f80853a1b046270ceaa34d03c6b6ef097b24bc41fb75210008353fd4335a03bfa38d095906bc49d98188367d53ba6589
6
+ metadata.gz: e2bd0c5207615193671bf330177ce372ca37e18bb1bbb8d0c8c10b50d8a89488525c6c5e704502ba9506a9e6382655889597bd28185e3fb06869a6fb0b50906a
7
+ data.tar.gz: 9fd8b8a982cb099053a904c71f56f61634875118ba1f1f4dc1fbaa8b9e10f7ade63a1c068f085cade9c0d59ce82b340a9a00a1d37bf174b81e11100767bf0f99
data/lib/ext/array.rb CHANGED
@@ -1,3 +1,5 @@
1
+ require_relative 'object'
2
+
1
3
  module Ext
2
4
  module Array
3
5
  ##
@@ -18,3 +20,4 @@ module Ext
18
20
  end
19
21
 
20
22
  Array.include Ext::Array
23
+ Array.include Ext::Object
data/lib/ext/hash.rb CHANGED
@@ -1,3 +1,5 @@
1
+ require_relative 'object'
2
+
1
3
  module Ext
2
4
  module Hash
3
5
  def method_missing(method_name, *args, &block)
@@ -25,3 +27,4 @@ module Ext
25
27
  end
26
28
 
27
29
  Hash.include Ext::Hash
30
+ Hash.include Ext::Object
data/lib/ext/object.rb CHANGED
@@ -28,4 +28,4 @@ module Ext
28
28
  end
29
29
  end
30
30
 
31
- ::Object.include Ext::Object
31
+ Object.include Ext::Object
metadata CHANGED
@@ -1,16 +1,21 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: omg-attrs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matthew Greenfield
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-09-04 00:00:00.000000000 Z
11
+ date: 2024-09-05 00:00:00.000000000 Z
12
12
  dependencies: []
13
- description: Makes it easy to slice and dice objects and collections of objects
13
+ description: |
14
+ - Adds `Object#attrs` method for querying nested attributes
15
+ - Adds `Array#where` to return a subset of elements matching a condition
16
+ - Adds `Array#find_by` to return the first element matching a condition
17
+ - Adds `Object#match?` to check if an object matches a condition
18
+ - Adds `Hash#method_missing` to allow {a: 1}.a instead of {a: 1}[:a]
14
19
  email:
15
20
  - mattgreenfield1@gmail.com
16
21
  executables: []
@@ -45,5 +50,5 @@ requirements: []
45
50
  rubygems_version: 3.5.17
46
51
  signing_key:
47
52
  specification_version: 4
48
- summary: Allows all objects to call `.attrs` which acts as a recursive `.slice` method
53
+ summary: Gives objects methods to query nested attributes
49
54
  test_files: []