activefacts-api 1.9.12 → 1.9.13
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 +5 -5
- data/activefacts-api.gemspec +2 -2
- data/lib/activefacts/api/constellation.rb +1 -1
- data/lib/activefacts/api/entity.rb +1 -1
- data/lib/activefacts/api/instance.rb +8 -0
- data/lib/activefacts/api/numeric.rb +3 -1
- data/lib/activefacts/api/role_values.rb +5 -5
- data/lib/activefacts/api/value.rb +1 -1
- data/lib/activefacts/api/version.rb +1 -1
- metadata +8 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 8c3ae722ceb4f264e163be7c166507f6ab3ab328cea1513ff0599ea0c54a3270
|
4
|
+
data.tar.gz: '096701429372fe651503a58c4631c0f6090f21493555a3c2705ec2cbd71c1f04'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cbb093b3faaa2c8f31e5c9f33c6afd076e3d72e803beb57272eb6769e6a44af9a98c909f9643c5d08da3f9fe0e0815ed76b90cecd9de524a6453497485d79346
|
7
|
+
data.tar.gz: 8f349dca05234d1b24c2408eb81ee5fbc3d0a3458021c099374cf4da6118c349d7dbc32c5e82a86c462da06acb878f6de8ab1f43a8de58cdcced608ec8b79979
|
data/activefacts-api.gemspec
CHANGED
@@ -8,7 +8,7 @@ Gem::Specification.new do |spec|
|
|
8
8
|
spec.version = ActiveFacts::API::VERSION
|
9
9
|
spec.authors = ["Clifford Heath"]
|
10
10
|
spec.email = ["clifford.heath@gmail.com"]
|
11
|
-
spec.date
|
11
|
+
spec.date = "2022-06-15"
|
12
12
|
|
13
13
|
spec.summary = "A fact-based data model DSL and API"
|
14
14
|
spec.description = %q{
|
@@ -35,7 +35,7 @@ over the fact population.
|
|
35
35
|
spec.add_runtime_dependency 'tracing', ["~> 2", ">= 2.0.4"]
|
36
36
|
|
37
37
|
spec.add_development_dependency "bundler", ">= 1.10"
|
38
|
-
spec.add_development_dependency "rake", "
|
38
|
+
spec.add_development_dependency "rake", ">= 10"
|
39
39
|
spec.add_development_dependency "rspec", "~> 3.3"
|
40
40
|
end
|
41
41
|
|
@@ -65,7 +65,7 @@ module ActiveFacts
|
|
65
65
|
# With no parameters, return the collection of all instances of that object_type.
|
66
66
|
# With parameters, assert an instance of the object_type identified by the values passed as args.
|
67
67
|
def method_missing(m, *args, &b)
|
68
|
-
klass = @vocabulary.const_get(m)
|
68
|
+
klass = @vocabulary.const_get(m) rescue nil # Catch missing lower-case names (wrong constant) and use super
|
69
69
|
if invalid_object_type klass
|
70
70
|
super
|
71
71
|
else
|
@@ -466,7 +466,7 @@ module ActiveFacts
|
|
466
466
|
|
467
467
|
def other.new_instance constellation, *args
|
468
468
|
instance = allocate
|
469
|
-
instance.instance_variable_set(
|
469
|
+
instance.instance_variable_set(constellation_variable_name, constellation)
|
470
470
|
instance.send(:initialize, *args)
|
471
471
|
instance
|
472
472
|
end
|
@@ -26,6 +26,10 @@ module ActiveFacts
|
|
26
26
|
end
|
27
27
|
end
|
28
28
|
|
29
|
+
def constellation_variable_name
|
30
|
+
@@constellation_variable_name ||= "@constellation"
|
31
|
+
end
|
32
|
+
|
29
33
|
def is_a? klass
|
30
34
|
super || self.class.supertypes_transitive.include?(klass)
|
31
35
|
end
|
@@ -158,6 +162,10 @@ module ActiveFacts
|
|
158
162
|
module ClassMethods #:nodoc:
|
159
163
|
include ObjectType
|
160
164
|
# Add Instance class methods here
|
165
|
+
|
166
|
+
def constellation_variable_name
|
167
|
+
@@constellation_variable_name ||= "@constellation"
|
168
|
+
end
|
161
169
|
end
|
162
170
|
end
|
163
171
|
end
|
@@ -62,7 +62,9 @@ class Decimal < SimpleDelegator #:nodoc:
|
|
62
62
|
include ActiveFacts::API::SimpleDelegation
|
63
63
|
|
64
64
|
def delegate_new(v)
|
65
|
-
if
|
65
|
+
if RUBY_VERSION >= "3"
|
66
|
+
BigDecimal(v)
|
67
|
+
elsif v.is_a?(BigDecimal) || v.is_a?(Integer)
|
66
68
|
BigDecimal.new(v.to_s)
|
67
69
|
else
|
68
70
|
BigDecimal.new(v)
|
@@ -144,16 +144,16 @@ module ActiveFacts
|
|
144
144
|
def_single_delegator :@a, :empty?
|
145
145
|
def_single_delegator :@a, :include?
|
146
146
|
def_single_delegator :@a, :inject, 2
|
147
|
-
def_single_delegator :@a, :select, -
|
148
|
-
def_single_delegator :@a, :reject, -
|
147
|
+
def_single_delegator :@a, :select, -2, 1
|
148
|
+
def_single_delegator :@a, :reject, -2, 1
|
149
149
|
def_single_delegator :@a, :size
|
150
|
-
def_single_delegator :@a, :sort_by, -
|
150
|
+
def_single_delegator :@a, :sort_by, -2, 1
|
151
151
|
def_single_delegator :@a, :to_a
|
152
152
|
def_single_delegator :@a, :-
|
153
153
|
# These delegators allow a negative arity in RSpec because the tests test it (to make sure the code doesn't pass too many args)
|
154
|
-
def_single_delegator :@a, :each, *([-
|
154
|
+
def_single_delegator :@a, :each, *([-2, 1] + Array(defined?(::RSpec) ? -2 : nil))
|
155
155
|
def_single_delegator :@a, :detect, 1, *([-1, 1] + Array(defined?(::RSpec) ? -2 : nil))
|
156
|
-
def_single_delegator :@a, :map, -
|
156
|
+
def_single_delegator :@a, :map, -2, 1
|
157
157
|
end
|
158
158
|
end
|
159
159
|
end
|
@@ -155,7 +155,7 @@ module ActiveFacts
|
|
155
155
|
class << klass
|
156
156
|
def new_instance constellation, *args
|
157
157
|
instance = allocate
|
158
|
-
instance.instance_variable_set(
|
158
|
+
instance.instance_variable_set(constellation_variable_name, constellation)
|
159
159
|
instance.send(:initialize, *args)
|
160
160
|
instance
|
161
161
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activefacts-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.9.
|
4
|
+
version: 1.9.13
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Clifford Heath
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-06-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rbtree-pure
|
@@ -68,14 +68,14 @@ dependencies:
|
|
68
68
|
name: rake
|
69
69
|
requirement: !ruby/object:Gem::Requirement
|
70
70
|
requirements:
|
71
|
-
- - "
|
71
|
+
- - ">="
|
72
72
|
- !ruby/object:Gem::Version
|
73
73
|
version: '10'
|
74
74
|
type: :development
|
75
75
|
prerelease: false
|
76
76
|
version_requirements: !ruby/object:Gem::Requirement
|
77
77
|
requirements:
|
78
|
-
- - "
|
78
|
+
- - ">="
|
79
79
|
- !ruby/object:Gem::Version
|
80
80
|
version: '10'
|
81
81
|
- !ruby/object:Gem::Dependency
|
@@ -139,7 +139,7 @@ homepage: https://github.com/cjheath/activefacts-api
|
|
139
139
|
licenses:
|
140
140
|
- MIT
|
141
141
|
metadata: {}
|
142
|
-
post_install_message:
|
142
|
+
post_install_message:
|
143
143
|
rdoc_options: []
|
144
144
|
require_paths:
|
145
145
|
- lib
|
@@ -154,9 +154,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
154
154
|
- !ruby/object:Gem::Version
|
155
155
|
version: '0'
|
156
156
|
requirements: []
|
157
|
-
|
158
|
-
|
159
|
-
signing_key:
|
157
|
+
rubygems_version: 3.2.22
|
158
|
+
signing_key:
|
160
159
|
specification_version: 4
|
161
160
|
summary: A fact-based data model DSL and API
|
162
161
|
test_files: []
|