t12n 0.1.0 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/t12n.rb +3 -2
- data/lib/t12n/schema_builder.rb +2 -1
- data/lib/t12n/schema_store.rb +1 -0
- data/lib/t12n/serializer.rb +8 -1
- data/lib/t12n/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ef2dec0bbe62bca0a96adb8dbbbcb8f34247685e1732c6da2c12b2f60a2b3ac2
|
4
|
+
data.tar.gz: c97270db164e850355428fd019c80b9f6c3343509544e0203b47aa28cbd9903c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0501cb657af60da6ef6a3cf217fa5c3e206664eb4f5e5346f5c34c2c2054849d105ddb7127ca16e14a3c45b52b5b212540fd59112f4b78ce021b3d2f08a197c1
|
7
|
+
data.tar.gz: e557b6371029d851dcb9f9eff37617706abcb8fe395a66bc759fd4671764e825bd711a6150f8e826b373d9c46497a7646cd69edb89ce5fefcfb9095f9c9571b6
|
data/lib/t12n.rb
CHANGED
data/lib/t12n/schema_builder.rb
CHANGED
@@ -37,7 +37,8 @@ module T12n
|
|
37
37
|
|
38
38
|
with_context do |context|
|
39
39
|
schema = t12n.fetch_schema(schema_name, context)
|
40
|
-
assoc_attrs = schema.attrs
|
40
|
+
assoc_attrs = schema.attrs
|
41
|
+
assoc_attrs = assoc_attrs.select { |attr| attr_name_set.include?(attr.name) } if attr_name_set
|
41
42
|
|
42
43
|
assoc_attrs.each do |assoc_attr|
|
43
44
|
define_attr("#{schema_name}.#{assoc_attr.name}") do |object|
|
data/lib/t12n/schema_store.rb
CHANGED
data/lib/t12n/serializer.rb
CHANGED
@@ -4,7 +4,14 @@ module T12n
|
|
4
4
|
class Serializer
|
5
5
|
class << self
|
6
6
|
def from_proc(prc)
|
7
|
-
prc
|
7
|
+
case prc.arity
|
8
|
+
when 0
|
9
|
+
->(_object) { prc.() }
|
10
|
+
when 1, -1
|
11
|
+
->(object) { prc.(object) }
|
12
|
+
else
|
13
|
+
raise T12n::ArgumentError, "Unexpected proc arity: #{prc.arity}"
|
14
|
+
end
|
8
15
|
end
|
9
16
|
end
|
10
17
|
end
|
data/lib/t12n/version.rb
CHANGED