primalize 0.3.4 → 0.3.5
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.
- checksums.yaml +4 -4
- data/lib/primalize/many.rb +2 -0
- data/lib/primalize/single.rb +11 -8
- data/lib/primalize/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 70326a3635d273a4784f118b93ffedd496b4b3fd1bd879f2bc3ad660dfd8727e
|
|
4
|
+
data.tar.gz: 5ba6145dc901fb14d9afdfa35ad65dd1676ae3db0d6f6151051a5c5ff87d3e7b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 73af1aadb7fd5db6ff75a23a6a9a9c12bbe4474395326caf376e92377f3cb23fc44fa3d84f86795700fc9bcf4cdec909cba47b92b5d33bc9619ffb7f3e63e824
|
|
7
|
+
data.tar.gz: e45fe5b42c49bcd31b3bacaee43cef89d561469d10881b2e6c4779ba136cb42cc49f81ba9b84b89f011b3efdba7251a3ea8ad050c015824e9d2ae30259d1c0c8
|
data/lib/primalize/many.rb
CHANGED
data/lib/primalize/single.rb
CHANGED
|
@@ -9,13 +9,16 @@ module Primalize
|
|
|
9
9
|
end
|
|
10
10
|
|
|
11
11
|
class << self
|
|
12
|
+
def attributes **attrs
|
|
13
|
+
_attributes attrs
|
|
14
|
+
end
|
|
12
15
|
|
|
13
|
-
def
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
def _attributes **attrs
|
|
17
|
+
@attributes ||= if self.equal? Primalize::Single
|
|
18
|
+
{}
|
|
19
|
+
else
|
|
20
|
+
superclass._attributes.dup
|
|
21
|
+
end
|
|
19
22
|
|
|
20
23
|
add_attributes attrs
|
|
21
24
|
|
|
@@ -107,7 +110,7 @@ module Primalize
|
|
|
107
110
|
end
|
|
108
111
|
|
|
109
112
|
def call
|
|
110
|
-
self.class.
|
|
113
|
+
self.class._attributes.each_with_object({}) do |(attr, type), hash|
|
|
111
114
|
value = public_send(attr)
|
|
112
115
|
|
|
113
116
|
hash[attr] = if type === value
|
|
@@ -130,7 +133,7 @@ module Primalize
|
|
|
130
133
|
end
|
|
131
134
|
|
|
132
135
|
def csv_headers
|
|
133
|
-
self.class.
|
|
136
|
+
self.class._attributes.keys.map(&:to_s)
|
|
134
137
|
end
|
|
135
138
|
|
|
136
139
|
def to_csv
|
data/lib/primalize/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: primalize
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.3.
|
|
4
|
+
version: 0.3.5
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Jamie Gaskins
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2018-
|
|
11
|
+
date: 2018-02-10 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|