activefacts-api 0.9.8 → 0.9.9

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
  SHA1:
3
- metadata.gz: dc17ae7a132478e2e4b591e19adf35d79627d70b
4
- data.tar.gz: b6b63e83981a4ec466aa128b94fb7cfbf1370d0e
3
+ metadata.gz: d98f2a57181b4caad266b2b2aee333fe9f685835
4
+ data.tar.gz: 8d32f6cb29ad9020d0e4ddc268bee3dc59cd7b9f
5
5
  SHA512:
6
- metadata.gz: 916183df4492dab5a94c172d85f58b7f4a04f8407eb9decc301b07c8f137a5c6b3bfd4c80ce4f4d7b98e5ba9fe26d0483dd3a71b768159701b63d0c07b3a0b1e
7
- data.tar.gz: 14858f846fe7c1fba970cd1b2cd6f890d21ae5247ce2107d73c49e75d919cf011814bd724e8b90ace9fdd524b262a3c83538b242137452d13eb8c0f454758323
6
+ metadata.gz: a1f5f6c8d57a313f4185690394f93d6ff467849c311d790f5b7cb72f2da0676a3ee81d7edaa2595bf4d9fd5389393c392465d4a673c8064740a82365c14d9fc1
7
+ data.tar.gz: 108dd965bb01572596358a5cca3fa7f0c9f31c279c425ccd622e0ffb926e80550b471d9e32844cd38b15a0946f21c08503511e9213784992e44237006dea3f82
data/Gemfile CHANGED
@@ -1,20 +1,20 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gem 'rake', '>=10.1', :group => [:development, :test]
4
- gem 'rbtree-pure'
3
+ gem 'rake', '~> 10.1', :group => [:development, :test]
4
+ gem 'rbtree-pure', '~> 0'
5
5
 
6
6
  group :development do
7
- gem 'jeweler'
8
- gem 'rspec', '~>2.6.0'
9
- gem 'ruby-debug', :platforms => [:mri_18]
10
- gem 'debugger', :platforms => [:mri_19,
7
+ gem 'jeweler', '~> 0'
8
+ gem 'rspec', '~> 2.6', '>= 2.6.0'
9
+ gem 'ruby-debug', '~> 0', :platforms => [:mri_18]
10
+ gem 'debugger', '~> 0', :platforms => [:mri_19,
11
11
  (['1.8.7', '1.9.2'].include?(RUBY_VERSION) || RUBY_PLATFORM == 'java') ? nil : :mri_20
12
12
  ].compact
13
- gem 'pry', :platforms => [:jruby, :rbx]
13
+ gem 'pry', '~> 0', :platforms => [:jruby, :rbx]
14
14
  end
15
15
 
16
16
  group :test do
17
17
  # rcov 1.0.0 is broken for jruby, so 0.9.11 is the only one available.
18
- gem 'rcov', '~>0.9.11', :platforms => [:jruby, :mri_18], :require => false
19
- gem 'simplecov', '~>0.6.4', :platforms => :mri_19, :require => false
18
+ gem 'rcov', '~> 0.9.11', :platforms => [:jruby, :mri_18], :require => false
19
+ gem 'simplecov', '~> 0.6', '>= 0.6.4', :platforms => :mri_19, :require => false
20
20
  end
data/Rakefile CHANGED
@@ -19,11 +19,6 @@ over the fact population.
19
19
  gem.authors = ["Clifford Heath"]
20
20
  # Include your dependencies below. Runtime dependencies are required when using your gem,
21
21
  # and development dependencies are only needed for development (ie running rake tasks, tests, etc)
22
- gem.add_development_dependency "rspec", "~> 2.3.0"
23
- gem.add_development_dependency "bundler", "~> 1.0.0"
24
- gem.add_development_dependency "jeweler", "~> 1.5.2"
25
- # gem.add_development_dependency "rcov", ">= 0"
26
- gem.add_development_dependency "rdoc", ">= 2.4.2"
27
22
  end
28
23
  Jeweler::RubygemsDotOrgTasks.new
29
24
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.9.8
1
+ 0.9.9
@@ -2,14 +2,16 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
+ # stub: activefacts-api 0.9.9 ruby lib
5
6
 
6
7
  Gem::Specification.new do |s|
7
8
  s.name = "activefacts-api"
8
- s.version = "0.9.8"
9
+ s.version = "0.9.9"
9
10
 
10
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
+ s.require_paths = ["lib"]
11
13
  s.authors = ["Clifford Heath"]
12
- s.date = "2013-11-13"
14
+ s.date = "2014-02-14"
13
15
  s.description = "\nThe ActiveFacts API is a Ruby DSL for managing constellations of elementary facts.\nEach fact is either existential (a value or an entity), characteristic (boolean) or\nbinary relational (A rel B). Relational facts are consistently co-referenced, so you\ncan traverse them efficiently in any direction. Each constellation maintains constraints\nover the fact population.\n"
14
16
  s.email = "clifford.heath@gmail.com"
15
17
  s.extra_rdoc_files = [
@@ -32,6 +34,7 @@ Gem::Specification.new do |s|
32
34
  "lib/activefacts/api/date.rb",
33
35
  "lib/activefacts/api/entity.rb",
34
36
  "lib/activefacts/api/exceptions.rb",
37
+ "lib/activefacts/api/fact_type.rb",
35
38
  "lib/activefacts/api/guid.rb",
36
39
  "lib/activefacts/api/instance.rb",
37
40
  "lib/activefacts/api/instance_index.rb",
@@ -67,50 +70,37 @@ Gem::Specification.new do |s|
67
70
  ]
68
71
  s.homepage = "http://github.com/cjheath/activefacts-api"
69
72
  s.licenses = ["MIT"]
70
- s.require_paths = ["lib"]
71
- s.rubygems_version = "2.0.5"
73
+ s.rubygems_version = "2.2.1"
72
74
  s.summary = "A fact-based data model DSL and API"
73
75
 
74
76
  if s.respond_to? :specification_version then
75
77
  s.specification_version = 4
76
78
 
77
79
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
78
- s.add_runtime_dependency(%q<rbtree-pure>, [">= 0"])
79
- s.add_development_dependency(%q<rake>, [">= 10.1"])
80
- s.add_development_dependency(%q<jeweler>, [">= 0"])
81
- s.add_development_dependency(%q<rspec>, ["~> 2.6.0"])
82
- s.add_development_dependency(%q<ruby-debug>, [">= 0"])
83
- s.add_development_dependency(%q<debugger>, [">= 0"])
84
- s.add_development_dependency(%q<pry>, [">= 0"])
85
- s.add_development_dependency(%q<rspec>, ["~> 2.3.0"])
86
- s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
87
- s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
88
- s.add_development_dependency(%q<rdoc>, [">= 2.4.2"])
80
+ s.add_runtime_dependency(%q<rbtree-pure>, ["~> 0"])
81
+ s.add_development_dependency(%q<rake>, ["~> 10.1"])
82
+ s.add_development_dependency(%q<jeweler>, ["~> 0"])
83
+ s.add_development_dependency(%q<rspec>, [">= 2.6.0", "~> 2.6"])
84
+ s.add_development_dependency(%q<ruby-debug>, ["~> 0"])
85
+ s.add_development_dependency(%q<debugger>, ["~> 0"])
86
+ s.add_development_dependency(%q<pry>, ["~> 0"])
89
87
  else
90
- s.add_dependency(%q<rbtree-pure>, [">= 0"])
91
- s.add_dependency(%q<rake>, [">= 10.1"])
92
- s.add_dependency(%q<jeweler>, [">= 0"])
93
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
94
- s.add_dependency(%q<ruby-debug>, [">= 0"])
95
- s.add_dependency(%q<debugger>, [">= 0"])
96
- s.add_dependency(%q<pry>, [">= 0"])
97
- s.add_dependency(%q<rspec>, ["~> 2.3.0"])
98
- s.add_dependency(%q<bundler>, ["~> 1.0.0"])
99
- s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
100
- s.add_dependency(%q<rdoc>, [">= 2.4.2"])
88
+ s.add_dependency(%q<rbtree-pure>, ["~> 0"])
89
+ s.add_dependency(%q<rake>, ["~> 10.1"])
90
+ s.add_dependency(%q<jeweler>, ["~> 0"])
91
+ s.add_dependency(%q<rspec>, [">= 2.6.0", "~> 2.6"])
92
+ s.add_dependency(%q<ruby-debug>, ["~> 0"])
93
+ s.add_dependency(%q<debugger>, ["~> 0"])
94
+ s.add_dependency(%q<pry>, ["~> 0"])
101
95
  end
102
96
  else
103
- s.add_dependency(%q<rbtree-pure>, [">= 0"])
104
- s.add_dependency(%q<rake>, [">= 10.1"])
105
- s.add_dependency(%q<jeweler>, [">= 0"])
106
- s.add_dependency(%q<rspec>, ["~> 2.6.0"])
107
- s.add_dependency(%q<ruby-debug>, [">= 0"])
108
- s.add_dependency(%q<debugger>, [">= 0"])
109
- s.add_dependency(%q<pry>, [">= 0"])
110
- s.add_dependency(%q<rspec>, ["~> 2.3.0"])
111
- s.add_dependency(%q<bundler>, ["~> 1.0.0"])
112
- s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
113
- s.add_dependency(%q<rdoc>, [">= 2.4.2"])
97
+ s.add_dependency(%q<rbtree-pure>, ["~> 0"])
98
+ s.add_dependency(%q<rake>, ["~> 10.1"])
99
+ s.add_dependency(%q<jeweler>, ["~> 0"])
100
+ s.add_dependency(%q<rspec>, [">= 2.6.0", "~> 2.6"])
101
+ s.add_dependency(%q<ruby-debug>, ["~> 0"])
102
+ s.add_dependency(%q<debugger>, ["~> 0"])
103
+ s.add_dependency(%q<pry>, ["~> 0"])
114
104
  end
115
105
  end
116
106
 
@@ -35,6 +35,7 @@ require 'activefacts/api/vocabulary' # A Ruby module may become a Voc
35
35
  require 'activefacts/api/instance_index' # The index used by a constellation to record every instance
36
36
  require 'activefacts/api/constellation' # A Constellation is a query result or fact population
37
37
  require 'activefacts/api/object_type' # A Ruby class may become a ObjectType in a Vocabulary
38
+ require 'activefacts/api/fact_type' # Each role belongs to a single fact type
38
39
  require 'activefacts/api/role' # A ObjectType has a collection of Roles
39
40
  require 'activefacts/api/role_values' # The container used for sets of role players in many_one's
40
41
  require 'activefacts/api/instance' # An Instance is an instance of a ObjectType class
@@ -38,7 +38,7 @@ module ActiveFacts
38
38
  value =
39
39
  if key == nil
40
40
  nil
41
- elsif role.is_unary
41
+ elsif role.unary?
42
42
  (key && true) # Preserve nil and false
43
43
  else
44
44
  role.counterpart.object_type.assert_instance(constellation, Array(key))
@@ -313,7 +313,7 @@ module ActiveFacts
313
313
  end.map do |role|
314
314
  if arg_hash.include?(n = role.name) # Do it this way to avoid problems where nil or false is provided
315
315
  value = arg_hash[n]
316
- next (value && true) if (role.is_unary)
316
+ next (value && true) if (role.unary?)
317
317
  if value
318
318
  klass = role.counterpart.object_type
319
319
  value = klass.identifying_role_values(constellation, Array(value))
@@ -323,7 +323,7 @@ module ActiveFacts
323
323
  counterpart_class = role.counterpart && role.counterpart.object_type
324
324
  value = value.identifying_role_values(counterpart_class)
325
325
  arg_hash[n] = value # Save the value for making a new instance
326
- next value if (role.is_unary)
326
+ next value if (role.unary?)
327
327
  else
328
328
  value = nil
329
329
  end
@@ -363,7 +363,7 @@ module ActiveFacts
363
363
  value =
364
364
  if v == nil
365
365
  nil
366
- elsif role.is_unary
366
+ elsif role.unary?
367
367
  (v && true) # Preserve nil and false
368
368
  else
369
369
  role.counterpart.object_type.assert_instance(constellation, Array(v))
@@ -0,0 +1,19 @@
1
+ #
2
+ # ActiveFacts API
3
+ # Role class.
4
+ # Each accessor method created on an instance corresponds to a Role object in the instance's class.
5
+ # Binary fact types construct a Role at each end.
6
+ #
7
+ # Copyright (c) 2009 Clifford Heath. Read the LICENSE file.
8
+ #
9
+ module ActiveFacts
10
+ module API
11
+ class FactType
12
+ attr_accessor :all_role
13
+
14
+ def initialize
15
+ @all_role = []
16
+ end
17
+ end
18
+ end
19
+ end
@@ -60,7 +60,8 @@ module ActiveFacts
60
60
  # Example: maybe :is_ceo
61
61
  def maybe(role_name, options = {})
62
62
  raise UnrecognisedOptionsException.new("role", role_name, options.keys) unless options.empty?
63
- realise_role(roles[role_name] = Role.new(self, TrueClass, role_name))
63
+ fact_type = FactType.new
64
+ realise_role(roles[role_name] = Role.new(fact_type, self, role_name, false, true))
64
65
  end
65
66
 
66
67
  # Define a binary fact type relating this object_type to another,
@@ -169,7 +170,7 @@ module ActiveFacts
169
170
 
170
171
  # Every new role added or inherited comes through here:
171
172
  def realise_role(role) #:nodoc:
172
- if (role.is_unary)
173
+ if (role.unary?)
173
174
  # Unary role
174
175
  define_unary_role_accessor(role)
175
176
  elsif (role.unique)
@@ -211,18 +212,15 @@ module ActiveFacts
211
212
  if roles[role_name]
212
213
  raise DuplicateRoleException.new("#{name} cannot have more than one role named #{role_name}")
213
214
  end
214
- roles[role_name] = role = Role.new(self, nil, role_name, mandatory)
215
+ fact_type = FactType.new
216
+ roles[role_name] = role = Role.new(fact_type, self, role_name, mandatory, true)
215
217
 
216
218
  # There may be a forward reference here where role_name is a Symbol,
217
219
  # and the block runs later when that Symbol is bound to the object_type.
218
220
  when_bound(related, self, role_name, related_role_name) do |target, definer, role_name, related_role_name|
219
- if (one_to_one)
220
- target.roles[related_role_name] = role.counterpart = Role.new(target, role, related_role_name, false)
221
- else
222
- target.roles[related_role_name] = role.counterpart = Role.new(target, role, related_role_name, false, false)
223
- end
221
+ counterpart = target.roles[related_role_name] = Role.new(fact_type, target, related_role_name, false, one_to_one)
224
222
  realise_role(role)
225
- target.realise_role(role.counterpart)
223
+ target.realise_role(counterpart)
226
224
  end
227
225
  end
228
226
 
@@ -14,19 +14,18 @@ module ActiveFacts
14
14
  # or _one_to_one_, and the other is created on the counterpart class.
15
15
  # Each ObjectType class maintains a RoleCollection hash of the roles it plays.
16
16
  class Role
17
+ attr_reader :fact_type # The FactType to which this role belongs
17
18
  attr_reader :object_type # The ObjectType to which this role belongs
18
- attr_reader :is_unary
19
19
  attr_reader :name # The name of the role (a Symbol)
20
- attr_accessor :counterpart # All roles except unaries have a counterpart Role
21
20
  attr_reader :unique # Is this role played by at most one instance, or more?
22
21
  attr_reader :mandatory # In a valid fact population, is this role required to be played?
23
22
  attr_reader :value_constraint # Counterpart Instances playing this role must meet this constraint
24
23
  attr_reader :is_identifying # Is this an identifying role for object_type?
25
24
 
26
- def initialize(object_type, counterpart, name, mandatory = false, unique = true)
25
+ def initialize(fact_type, object_type, name, mandatory, unique)
26
+ @fact_type = fact_type
27
+ @fact_type.all_role << self
27
28
  @object_type = object_type
28
- @is_unary = counterpart == TrueClass
29
- @counterpart = @is_unary ? nil : counterpart
30
29
  @name = name
31
30
  @mandatory = mandatory
32
31
  @unique = unique
@@ -34,6 +33,16 @@ module ActiveFacts
34
33
  associate_role(@object_type)
35
34
  end
36
35
 
36
+ # Is this role a unary (created by maybe)?
37
+ def unary?
38
+ # N.B. A role with a forward reference looks unary until it is resolved.
39
+ @fact_type.all_role.size == 1
40
+ end
41
+
42
+ def counterpart
43
+ @counterpart ||= (@fact_type.all_role - [self])[0]
44
+ end
45
+
37
46
  # Return the name of the getter method
38
47
  def getter
39
48
  @getter ||= @name.to_sym
@@ -49,19 +58,13 @@ module ActiveFacts
49
58
  @variable ||= "@#{@name}"
50
59
  end
51
60
 
52
- # Is this role a unary (created by maybe)? If so, it has no counterpart
53
- def unary?
54
- # N.B. A role with a forward reference looks unary until it is resolved.
55
- counterpart == nil
56
- end
57
-
58
61
  def inspect
59
62
  "<Role #{object_type.name}.#{name}>"
60
63
  end
61
64
 
62
65
  def verbalise
63
66
  "Role #{name} of #{object_type}, " +
64
- (@is_unary ? 'unary' : (counterpart ? 'played by' + counterpart.object_type : 'undefined'))
67
+ (unary? ? 'unary' : (counterpart ? 'played by' + counterpart.object_type : 'undefined'))
65
68
  end
66
69
 
67
70
  private
metadata CHANGED
@@ -1,169 +1,119 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activefacts-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.8
4
+ version: 0.9.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Clifford Heath
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-11-13 00:00:00.000000000 Z
11
+ date: 2014-02-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rbtree-pure
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>='
17
+ - - ~>
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>='
24
+ - - ~>
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ~>
32
32
  - !ruby/object:Gem::Version
33
33
  version: '10.1'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ~>
39
39
  - !ruby/object:Gem::Version
40
40
  version: '10.1'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: jeweler
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ~>
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ~>
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ~>
59
+ - - '>='
60
60
  - !ruby/object:Gem::Version
61
61
  version: 2.6.0
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
62
  - - ~>
67
63
  - !ruby/object:Gem::Version
68
- version: 2.6.0
69
- - !ruby/object:Gem::Dependency
70
- name: ruby-debug
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - '>='
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - '>='
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: debugger
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - '>='
88
- - !ruby/object:Gem::Version
89
- version: '0'
64
+ version: '2.6'
90
65
  type: :development
91
66
  prerelease: false
92
67
  version_requirements: !ruby/object:Gem::Requirement
93
68
  requirements:
94
69
  - - '>='
95
70
  - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: pry
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - '>='
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - '>='
71
+ version: 2.6.0
72
+ - - ~>
109
73
  - !ruby/object:Gem::Version
110
- version: '0'
74
+ version: '2.6'
111
75
  - !ruby/object:Gem::Dependency
112
- name: rspec
76
+ name: ruby-debug
113
77
  requirement: !ruby/object:Gem::Requirement
114
78
  requirements:
115
79
  - - ~>
116
80
  - !ruby/object:Gem::Version
117
- version: 2.3.0
81
+ version: '0'
118
82
  type: :development
119
83
  prerelease: false
120
84
  version_requirements: !ruby/object:Gem::Requirement
121
85
  requirements:
122
86
  - - ~>
123
87
  - !ruby/object:Gem::Version
124
- version: 2.3.0
88
+ version: '0'
125
89
  - !ruby/object:Gem::Dependency
126
- name: bundler
90
+ name: debugger
127
91
  requirement: !ruby/object:Gem::Requirement
128
92
  requirements:
129
93
  - - ~>
130
94
  - !ruby/object:Gem::Version
131
- version: 1.0.0
95
+ version: '0'
132
96
  type: :development
133
97
  prerelease: false
134
98
  version_requirements: !ruby/object:Gem::Requirement
135
99
  requirements:
136
100
  - - ~>
137
101
  - !ruby/object:Gem::Version
138
- version: 1.0.0
102
+ version: '0'
139
103
  - !ruby/object:Gem::Dependency
140
- name: jeweler
104
+ name: pry
141
105
  requirement: !ruby/object:Gem::Requirement
142
106
  requirements:
143
107
  - - ~>
144
108
  - !ruby/object:Gem::Version
145
- version: 1.5.2
109
+ version: '0'
146
110
  type: :development
147
111
  prerelease: false
148
112
  version_requirements: !ruby/object:Gem::Requirement
149
113
  requirements:
150
114
  - - ~>
151
115
  - !ruby/object:Gem::Version
152
- version: 1.5.2
153
- - !ruby/object:Gem::Dependency
154
- name: rdoc
155
- requirement: !ruby/object:Gem::Requirement
156
- requirements:
157
- - - '>='
158
- - !ruby/object:Gem::Version
159
- version: 2.4.2
160
- type: :development
161
- prerelease: false
162
- version_requirements: !ruby/object:Gem::Requirement
163
- requirements:
164
- - - '>='
165
- - !ruby/object:Gem::Version
166
- version: 2.4.2
116
+ version: '0'
167
117
  description: |2
168
118
 
169
119
  The ActiveFacts API is a Ruby DSL for managing constellations of elementary facts.
@@ -186,6 +136,7 @@ files:
186
136
  - LICENSE.txt
187
137
  - README.rdoc
188
138
  - Rakefile
139
+ - TODO
189
140
  - VERSION
190
141
  - activefacts-api.gemspec
191
142
  - lib/activefacts/api.rb
@@ -193,6 +144,7 @@ files:
193
144
  - lib/activefacts/api/date.rb
194
145
  - lib/activefacts/api/entity.rb
195
146
  - lib/activefacts/api/exceptions.rb
147
+ - lib/activefacts/api/fact_type.rb
196
148
  - lib/activefacts/api/guid.rb
197
149
  - lib/activefacts/api/instance.rb
198
150
  - lib/activefacts/api/instance_index.rb
@@ -225,7 +177,6 @@ files:
225
177
  - spec/simplecov_helper.rb
226
178
  - spec/spec_helper.rb
227
179
  - spec/support/reduce_exceptions_helper.rb
228
- - TODO
229
180
  homepage: http://github.com/cjheath/activefacts-api
230
181
  licenses:
231
182
  - MIT
@@ -246,7 +197,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
246
197
  version: '0'
247
198
  requirements: []
248
199
  rubyforge_project:
249
- rubygems_version: 2.0.5
200
+ rubygems_version: 2.2.1
250
201
  signing_key:
251
202
  specification_version: 4
252
203
  summary: A fact-based data model DSL and API