/
rom-relation.rb
49 lines (35 loc) · 1.13 KB
/
rom-relation.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# encoding: utf-8
require 'addressable/uri'
require 'set'
require 'concord'
require 'abstract_type'
require 'descendants_tracker'
require 'equalizer'
require 'axiom'
require 'axiom-optimizer'
require 'charlatan'
# Main ROM module with methods to setup and manage the environment
module ROM
# Raised when the returned tuples are unexpectedly empty
NoTuplesError = Class.new(RuntimeError)
# Raised when the returned tuples are unexpectedly too many
ManyTuplesError = Class.new(RuntimeError)
# Represent an undefined argument
Undefined = Class.new.freeze
# An empty frozen Hash useful for parameter default values
EMPTY_HASH = {}.freeze
# An empty frozen Array useful for parameter default values
EMPTY_ARRAY = [].freeze
# Represent a positive, infinitely large Float number
Infinity = 1.0 / 0
end # module ROM
require 'rom/support/axiom/adapter'
require 'rom/repository'
require 'rom/environment'
require 'rom/relation'
require 'rom/schema'
require 'rom/schema/definition'
require 'rom/schema/definition/relation'
require 'rom/schema/definition/relation/base'
require 'rom/mapping'
require 'rom/mapping/definition'