arel_toolkit 0.1.0 → 0.2.0

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.
Files changed (88) hide show
  1. checksums.yaml +4 -4
  2. data/.codeclimate.yml +29 -0
  3. data/.gitignore +5 -0
  4. data/.rubocop.yml +34 -0
  5. data/.ruby-version +1 -1
  6. data/.travis.yml +16 -2
  7. data/CHANGELOG.md +10 -0
  8. data/Gemfile +1 -1
  9. data/Gemfile.lock +94 -1
  10. data/Guardfile +42 -0
  11. data/README.md +23 -4
  12. data/Rakefile +3 -3
  13. data/arel_toolkit.gemspec +32 -15
  14. data/bin/console +4 -7
  15. data/lib/arel/extensions.rb +71 -0
  16. data/lib/arel/extensions/absolute.rb +10 -0
  17. data/lib/arel/extensions/all.rb +23 -0
  18. data/lib/arel/extensions/any.rb +23 -0
  19. data/lib/arel/extensions/array.rb +29 -0
  20. data/lib/arel/extensions/array_subselect.rb +23 -0
  21. data/lib/arel/extensions/between_symmetric.rb +23 -0
  22. data/lib/arel/extensions/bit_string.rb +27 -0
  23. data/lib/arel/extensions/bitwise_xor.rb +10 -0
  24. data/lib/arel/extensions/coalesce.rb +9 -0
  25. data/lib/arel/extensions/conflict.rb +47 -0
  26. data/lib/arel/extensions/contained_by.rb +10 -0
  27. data/lib/arel/extensions/contains.rb +10 -0
  28. data/lib/arel/extensions/cross_join.rb +21 -0
  29. data/lib/arel/extensions/cube_root.rb +10 -0
  30. data/lib/arel/extensions/current_catalog.rb +20 -0
  31. data/lib/arel/extensions/current_date.rb +20 -0
  32. data/lib/arel/extensions/current_of_expression.rb +29 -0
  33. data/lib/arel/extensions/current_role.rb +20 -0
  34. data/lib/arel/extensions/current_schema.rb +20 -0
  35. data/lib/arel/extensions/current_time.rb +22 -0
  36. data/lib/arel/extensions/current_timestamp.rb +22 -0
  37. data/lib/arel/extensions/current_user.rb +20 -0
  38. data/lib/arel/extensions/default_values.rb +21 -0
  39. data/lib/arel/extensions/delete_statement.rb +49 -0
  40. data/lib/arel/extensions/distinct_from.rb +22 -0
  41. data/lib/arel/extensions/equality.rb +30 -0
  42. data/lib/arel/extensions/except_all.rb +21 -0
  43. data/lib/arel/extensions/exponentiation.rb +10 -0
  44. data/lib/arel/extensions/factorial.rb +33 -0
  45. data/lib/arel/extensions/function.rb +68 -0
  46. data/lib/arel/extensions/generate_series.rb +9 -0
  47. data/lib/arel/extensions/greatest.rb +9 -0
  48. data/lib/arel/extensions/indirection.rb +32 -0
  49. data/lib/arel/extensions/infer.rb +35 -0
  50. data/lib/arel/extensions/insert_statement.rb +69 -0
  51. data/lib/arel/extensions/intersect_all.rb +21 -0
  52. data/lib/arel/extensions/lateral.rb +34 -0
  53. data/lib/arel/extensions/least.rb +9 -0
  54. data/lib/arel/extensions/local_time.rb +22 -0
  55. data/lib/arel/extensions/local_timestamp.rb +22 -0
  56. data/lib/arel/extensions/modulo.rb +10 -0
  57. data/lib/arel/extensions/named_function.rb +15 -0
  58. data/lib/arel/extensions/natural_join.rb +21 -0
  59. data/lib/arel/extensions/not_between.rb +22 -0
  60. data/lib/arel/extensions/not_between_symmetric.rb +23 -0
  61. data/lib/arel/extensions/not_distinct_from.rb +22 -0
  62. data/lib/arel/extensions/not_equal.rb +30 -0
  63. data/lib/arel/extensions/not_similar.rb +29 -0
  64. data/lib/arel/extensions/null_if.rb +24 -0
  65. data/lib/arel/extensions/ordering.rb +47 -0
  66. data/lib/arel/extensions/overlap.rb +10 -0
  67. data/lib/arel/extensions/range_function.rb +23 -0
  68. data/lib/arel/extensions/rank.rb +9 -0
  69. data/lib/arel/extensions/row.rb +30 -0
  70. data/lib/arel/extensions/select_statement.rb +26 -0
  71. data/lib/arel/extensions/session_user.rb +20 -0
  72. data/lib/arel/extensions/set_to_default.rb +21 -0
  73. data/lib/arel/extensions/similar.rb +32 -0
  74. data/lib/arel/extensions/square_root.rb +10 -0
  75. data/lib/arel/extensions/table.rb +49 -0
  76. data/lib/arel/extensions/time_with_precision.rb +13 -0
  77. data/lib/arel/extensions/type_cast.rb +30 -0
  78. data/lib/arel/extensions/unknown.rb +20 -0
  79. data/lib/arel/extensions/update_statement.rb +63 -0
  80. data/lib/arel/extensions/user.rb +20 -0
  81. data/lib/arel/extensions/with_ordinality.rb +22 -0
  82. data/lib/arel/sql_to_arel.rb +8 -0
  83. data/lib/arel/sql_to_arel/frame_options.rb +110 -0
  84. data/lib/arel/sql_to_arel/pg_query_visitor.rb +1005 -0
  85. data/lib/arel/sql_to_arel/unbound_column_reference.rb +5 -0
  86. data/lib/arel_toolkit.rb +4 -3
  87. data/lib/arel_toolkit/version.rb +1 -1
  88. metadata +250 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 61279d81165c070d381809570889f444d07b02a84f4b5d392dc8cd6cbbe99458
4
- data.tar.gz: 7da8f04feb0fb3448dca2f2340eb0d5a6097f573a5e38dc4a45c1b738cff22a6
3
+ metadata.gz: 71faaa5416ecd1e04fec3cbeb1ea22104738027adc65941630c5b3e98b87a666
4
+ data.tar.gz: 15484e5f9677367fcd82291d29bd2a0f09c2d56634af5880f78e0f2cca532b55
5
5
  SHA512:
6
- metadata.gz: c206c863b191cbd187e1653c92f81427b6ac72834b5aee13e48b62e3663d7f129f6f8a8e845c889745d9b57602019e14a99ee1fbe4dc4198922bc19b6fc75ba4
7
- data.tar.gz: addc775ac113628c6c1fdf2342464c5f3670d7bd55a67c45b6b8e4cc6220e1279becc4c3b55d3d714be79588182481956ad477c610a2ccd3aaa51aa914eb7255
6
+ metadata.gz: b452f4200412105997f2d68d22febe6d98fec579b734bf09aa9a3c1408b25e3d1fe744f8eb7a24bccaf8b3969afc05d1a04eccc8d194e6e7cabb39c5ab3ec74f
7
+ data.tar.gz: 37f3fdc0e2612ab325247861b159c8621c66b46e07267b4c5d9e34eff19c3068117165c5a1adb803c086d144fd325bb813e67ff73370d925bf9bf283e2ff602e
data/.codeclimate.yml ADDED
@@ -0,0 +1,29 @@
1
+ version: "2"
2
+ plugins:
3
+ rubocop:
4
+ enabled: true
5
+ bundler-audit:
6
+ enabled: true
7
+ fixme:
8
+ enabled: true
9
+ checks:
10
+ argument-count:
11
+ enabled: false
12
+ complex-logic:
13
+ enabled: false
14
+ file-lines:
15
+ enabled: false
16
+ method-complexity:
17
+ enabled: false
18
+ method-count:
19
+ enabled: false
20
+ method-lines:
21
+ enabled: false
22
+ nested-control-flow:
23
+ enabled: false
24
+ return-statements:
25
+ enabled: false
26
+ similar-code:
27
+ enabled: false
28
+ identical-code:
29
+ enabled: false
data/.gitignore CHANGED
@@ -9,3 +9,8 @@
9
9
 
10
10
  # rspec failure tracking
11
11
  .rspec_status
12
+
13
+ *.temp
14
+ # emacs
15
+ TAGS
16
+ .#*
data/.rubocop.yml ADDED
@@ -0,0 +1,34 @@
1
+ Style/FrozenStringLiteralComment:
2
+ Enabled: false
3
+
4
+ Bundler/OrderedGems:
5
+ Enabled: false
6
+
7
+ Gemspec/OrderedDependencies:
8
+ Enabled: false
9
+
10
+ Metrics/LineLength:
11
+ Enabled: true
12
+ Max: 100
13
+
14
+ Metrics/ClassLength:
15
+ Enabled: false
16
+
17
+ Metrics/MethodLength:
18
+ Enabled: false
19
+
20
+ Metrics/BlockLength:
21
+ Enabled: false
22
+
23
+ Style/Documentation:
24
+ Enabled: false
25
+
26
+ Style/TrailingCommaInArrayLiteral:
27
+ EnforcedStyleForMultiline: comma
28
+
29
+ Style/TrailingCommaInArguments:
30
+ EnforcedStyleForMultiline: comma
31
+
32
+ Layout/MultilineMethodCallIndentation:
33
+ Enabled: true
34
+ EnforcedStyle: indented
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.6.1
1
+ 2.5.3
data/.travis.yml CHANGED
@@ -1,7 +1,21 @@
1
1
  ---
2
+ env:
3
+ global:
4
+ - CC_TEST_REPORTER_ID=64634aec08aacb7cba69b6eb1f4c814228cffe9d167dcb208dcc6d49a4c5c493
2
5
  sudo: false
3
6
  language: ruby
4
7
  cache: bundler
8
+ notifications:
9
+ email: false
5
10
  rvm:
6
- - 2.6.1
7
- before_install: gem install bundler -v 2.0.1
11
+ - 2.5.3
12
+ before_script:
13
+ - curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
14
+ - chmod +x ./cc-test-reporter
15
+ - ./cc-test-reporter before-build
16
+ before_install:
17
+ - gem install bundler -v 2.0.1
18
+ script:
19
+ - bundle exec rspec spec
20
+ after_script:
21
+ - ./cc-test-reporter after-build --exit-code $TRAVIS_TEST_RESULT
data/CHANGELOG.md ADDED
@@ -0,0 +1,10 @@
1
+ # Changelog
2
+
3
+ ## 0.2.0 (31st of May 2019)
4
+
5
+ ### New features
6
+
7
+ - Support generating Arel::InsertManager from PostgresQL INSERT statements
8
+ - Support generating Arel::SelectManager from PostgresQL SELECT statements
9
+ - Support generating Arel::UpdateManager from PostgresQL UPDATE statements
10
+ - Support generating Arel::DeleteManager from PostgresQL DELETE statements
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- source "https://rubygems.org"
1
+ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in arel_toolkit.gemspec
4
4
  gemspec
data/Gemfile.lock CHANGED
@@ -1,13 +1,75 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- arel_toolkit (0.1.0)
4
+ arel_toolkit (0.2.0)
5
+ arel (~> 9.0.0)
6
+ pg_query (~> 1.1.0)
5
7
 
6
8
  GEM
7
9
  remote: https://rubygems.org/
8
10
  specs:
11
+ ansi (1.5.0)
12
+ arel (9.0.0)
13
+ ast (2.4.0)
14
+ binding_of_caller (0.8.0)
15
+ debug_inspector (>= 0.0.1)
16
+ coderay (1.1.2)
17
+ debug_inspector (0.0.3)
9
18
  diff-lcs (1.3)
19
+ docile (1.3.1)
20
+ ffi (1.11.1)
21
+ formatador (0.2.5)
22
+ guard (2.15.0)
23
+ formatador (>= 0.2.4)
24
+ listen (>= 2.7, < 4.0)
25
+ lumberjack (>= 1.0.12, < 2.0)
26
+ nenv (~> 0.1)
27
+ notiffany (~> 0.0)
28
+ pry (>= 0.9.12)
29
+ shellany (~> 0.0)
30
+ thor (>= 0.18.1)
31
+ guard-compat (1.2.1)
32
+ guard-rspec (4.7.3)
33
+ guard (~> 2.1)
34
+ guard-compat (~> 1.1)
35
+ rspec (>= 2.99.0, < 4.0)
36
+ hirb (0.7.3)
37
+ interception (0.5)
38
+ jaro_winkler (1.5.2)
39
+ json (2.2.0)
40
+ listen (3.1.5)
41
+ rb-fsevent (~> 0.9, >= 0.9.4)
42
+ rb-inotify (~> 0.9, >= 0.9.7)
43
+ ruby_dep (~> 1.2)
44
+ lumberjack (1.0.13)
45
+ method_source (0.9.2)
46
+ nenv (0.3.0)
47
+ notiffany (0.1.1)
48
+ nenv (~> 0.1)
49
+ shellany (~> 0.0)
50
+ parallel (1.17.0)
51
+ parser (2.6.3.0)
52
+ ast (~> 2.4.0)
53
+ pg_query (1.1.0)
54
+ pry (0.12.2)
55
+ coderay (~> 1.1.0)
56
+ method_source (~> 0.9.0)
57
+ pry-alias (0.0.1)
58
+ binding_of_caller
59
+ pry
60
+ pry-nav (0.3.0)
61
+ pry (>= 0.9.10, < 0.13.0)
62
+ pry-rescue (1.5.0)
63
+ interception (>= 0.5)
64
+ pry (>= 0.12.0)
65
+ pry-stack_explorer (0.4.9.3)
66
+ binding_of_caller (>= 0.7)
67
+ pry (>= 0.9.11)
68
+ rainbow (3.0.0)
10
69
  rake (10.5.0)
70
+ rb-fsevent (0.10.3)
71
+ rb-inotify (0.10.0)
72
+ ffi (~> 1.0)
11
73
  rspec (3.8.0)
12
74
  rspec-core (~> 3.8.0)
13
75
  rspec-expectations (~> 3.8.0)
@@ -21,6 +83,27 @@ GEM
21
83
  diff-lcs (>= 1.2.0, < 2.0)
22
84
  rspec-support (~> 3.8.0)
23
85
  rspec-support (3.8.0)
86
+ rubocop (0.69.0)
87
+ jaro_winkler (~> 1.5.1)
88
+ parallel (~> 1.10)
89
+ parser (>= 2.6)
90
+ rainbow (>= 2.2.2, < 4.0)
91
+ ruby-progressbar (~> 1.7)
92
+ unicode-display_width (>= 1.4.0, < 1.7)
93
+ ruby-progressbar (1.10.0)
94
+ ruby_dep (1.5.0)
95
+ shellany (0.0.1)
96
+ simplecov (0.16.1)
97
+ docile (~> 1.1)
98
+ json (>= 1.8, < 3)
99
+ simplecov-html (~> 0.10.0)
100
+ simplecov-console (0.4.2)
101
+ ansi
102
+ hirb
103
+ simplecov
104
+ simplecov-html (0.10.2)
105
+ thor (0.20.3)
106
+ unicode-display_width (1.6.0)
24
107
 
25
108
  PLATFORMS
26
109
  ruby
@@ -28,8 +111,18 @@ PLATFORMS
28
111
  DEPENDENCIES
29
112
  arel_toolkit!
30
113
  bundler (~> 2.0)
114
+ guard (~> 2.15)
115
+ guard-rspec (~> 4.7)
116
+ pry
117
+ pry-alias
118
+ pry-nav
119
+ pry-rescue
120
+ pry-stack_explorer
31
121
  rake (~> 10.0)
32
122
  rspec (~> 3.8)
123
+ rubocop (~> 0.69)
124
+ simplecov (~> 0.16.1)
125
+ simplecov-console (~> 0.4.2)
33
126
 
34
127
  BUNDLED WITH
35
128
  2.0.1
data/Guardfile ADDED
@@ -0,0 +1,42 @@
1
+ # A sample Guardfile
2
+ # More info at https://github.com/guard/guard#readme
3
+
4
+ ## Uncomment and set this to only include directories you want to watch
5
+ # directories %w(app lib config test spec features) \
6
+ # .select{|d| Dir.exist?(d) ? d : UI.warning("Directory #{d} does not exist")}
7
+
8
+ ## Note: if you are using the `directories` clause above and you are not
9
+ ## watching the project directory ('.'), then you will want to move
10
+ ## the Guardfile to a watched dir and symlink it back, e.g.
11
+ #
12
+ # $ mkdir config
13
+ # $ mv Guardfile config/
14
+ # $ ln -s config/Guardfile .
15
+ #
16
+ # and, you'll have to watch "config/Guardfile" instead of "Guardfile"
17
+
18
+ # Note: The cmd option is now required due to the increasing number of ways
19
+ # rspec may be run, below are examples of the most common uses.
20
+ # * bundler: 'bundle exec rspec'
21
+ # * bundler binstubs: 'bin/rspec'
22
+ # * spring: 'bin/rspec' (This will use spring if running and you have
23
+ # installed the spring binstubs per the docs)
24
+ # * zeus: 'zeus rspec' (requires the server to be started separately)
25
+ # * 'just' rspec: 'rspec'
26
+
27
+ guard :rspec, cmd: 'bundle exec rspec', failed_mode: :focus do
28
+ require 'guard/rspec/dsl'
29
+ dsl = Guard::RSpec::Dsl.new(self)
30
+
31
+ # Feel free to open issues for suggestions and improvements
32
+
33
+ # RSpec files
34
+ rspec = dsl.rspec
35
+ watch(rspec.spec_helper) { rspec.spec_dir }
36
+ watch(rspec.spec_support) { rspec.spec_dir }
37
+ watch(rspec.spec_files)
38
+
39
+ # Ruby files
40
+ ruby = dsl.ruby
41
+ dsl.watch_spec_files_for(ruby.lib_files)
42
+ end
data/README.md CHANGED
@@ -1,8 +1,14 @@
1
1
  # ArelToolkit
2
2
 
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/arel_toolkit`. To experiment with that code, run `bin/console` for an interactive prompt.
3
+ ## Overview
4
4
 
5
- TODO: Delete this and the text above, and describe your gem
5
+ - [![Build Status](https://travis-ci.com/mvgijssel/arel_toolkit.svg?branch=master)](https://travis-ci.com/mvgijssel/arel_toolkit)
6
+ - [![Maintainability](https://api.codeclimate.com/v1/badges/3ef13d1649a00a98562d/maintainability)](https://codeclimate.com/github/mvgijssel/arel_toolkit/maintainability)
7
+ - [![Test Coverage](https://api.codeclimate.com/v1/badges/3ef13d1649a00a98562d/test_coverage)](https://codeclimate.com/github/mvgijssel/arel_toolkit/test_coverage)
8
+ - [![Gem Version](https://badge.fury.io/rb/arel_toolkit.svg)](https://badge.fury.io/rb/arel_toolkit)
9
+ - [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
10
+ - ![](http://ruby-gem-downloads-badge.herokuapp.com/arel_toolkit?type=total)
11
+ - ![](http://ruby-gem-downloads-badge.herokuapp.com/arel_toolkit?label=downloads-current-version)
6
12
 
7
13
  ## Installation
8
14
 
@@ -20,9 +26,22 @@ Or install it yourself as:
20
26
 
21
27
  $ gem install arel_toolkit
22
28
 
23
- ## Usage
29
+ ## sql_to_arel
24
30
 
25
- TODO: Write usage instructions here
31
+ Convert your (PostgreSQL) SQL into Arel.
32
+
33
+ ```ruby
34
+ [1] > sql = 'SELECT id FROM users'
35
+ => "SELECT id FROM users;"
36
+ [2] > arel = Arel.sql_to_arel(sql)
37
+ => #<Arel::SelectManager:0x00007fe4e39823d8>
38
+ [3] > arel.to_sql
39
+ => "SELECT \"id\" FROM \"users\""
40
+ ```
41
+
42
+ ## Extensions
43
+
44
+ Adds some missing Arel nodes and extends the existing visitors.
26
45
 
27
46
  ## Development
28
47
 
data/Rakefile CHANGED
@@ -1,6 +1,6 @@
1
- require "bundler/gem_tasks"
2
- require "rspec/core/rake_task"
1
+ require 'bundler/gem_tasks'
2
+ require 'rspec/core/rake_task'
3
3
 
4
4
  RSpec::Core::RakeTask.new(:spec)
5
5
 
6
- task :default => :spec
6
+ task default: :spec
data/arel_toolkit.gemspec CHANGED
@@ -1,28 +1,45 @@
1
- lib = File.expand_path("../lib", __FILE__)
1
+ lib = File.expand_path('lib', __dir__)
2
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
- require "arel_toolkit/version"
3
+ require 'arel_toolkit/version'
4
4
 
5
5
  Gem::Specification.new do |spec|
6
- spec.name = "arel_toolkit"
6
+ spec.name = 'arel_toolkit'
7
7
  spec.version = ArelToolkit::VERSION
8
- spec.authors = ["maarten"]
9
- spec.email = ["maarten@vgijssel.nl"]
8
+ spec.authors = ['maarten']
9
+ spec.email = ['maarten@vgijssel.nl']
10
10
 
11
- spec.summary = "Collection of tools for Arel"
12
- spec.description = "ArelToolkit contains parsing, querying, modifying, optimisations, extensions and more for Arel."
13
- spec.homepage = "https://github.com/mvgijssel/arel_toolkit"
14
- spec.license = "MIT"
11
+ spec.summary = 'Collection of tools for Arel'
12
+ spec.description = <<~STRING
13
+ ArelToolkit contains parsing, querying, modifying, optimisations, extensions and more for Arel.
14
+ STRING
15
+ spec.homepage = 'https://github.com/mvgijssel/arel_toolkit'
16
+ spec.license = 'MIT'
15
17
 
16
18
  # Specify which files should be added to the gem when it is released.
17
19
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
18
- spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
20
+ spec.files = Dir.chdir(File.expand_path(__dir__)) do
19
21
  `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
20
22
  end
21
- spec.bindir = "exe"
23
+ spec.bindir = 'exe'
22
24
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
- spec.require_paths = ["lib"]
25
+ spec.require_paths = ['lib']
24
26
 
25
- spec.add_development_dependency "bundler", "~> 2.0"
26
- spec.add_development_dependency "rake", "~> 10.0"
27
- spec.add_development_dependency "rspec", "~> 3.8"
27
+ spec.add_dependency 'arel', '~> 9.0.0'
28
+ spec.add_dependency 'pg_query', '~> 1.1.0'
29
+
30
+ spec.add_development_dependency 'bundler', '~> 2.0'
31
+ spec.add_development_dependency 'rake', '~> 10.0'
32
+ spec.add_development_dependency 'rspec', '~> 3.8'
33
+ spec.add_development_dependency 'simplecov', '~> 0.16.1'
34
+ spec.add_development_dependency 'simplecov-console', '~> 0.4.2'
35
+
36
+ spec.add_development_dependency 'rubocop', '~> 0.69'
37
+ spec.add_development_dependency 'guard', '~> 2.15'
38
+ spec.add_development_dependency 'guard-rspec', '~> 4.7'
39
+
40
+ spec.add_development_dependency 'pry'
41
+ spec.add_development_dependency 'pry-nav'
42
+ spec.add_development_dependency 'pry-rescue'
43
+ spec.add_development_dependency 'pry-stack_explorer'
44
+ spec.add_development_dependency 'pry-alias'
28
45
  end
data/bin/console CHANGED
@@ -1,14 +1,11 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- require "bundler/setup"
4
- require "arel_toolkit"
3
+ require 'bundler/setup'
4
+ require 'arel_toolkit'
5
5
 
6
6
  # You can add fixtures and/or initialization code here to make experimenting
7
7
  # with your gem easier. You can also use a different console, if you like.
8
8
 
9
9
  # (If you use this, don't forget to add pry to your Gemfile!)
10
- # require "pry"
11
- # Pry.start
12
-
13
- require "irb"
14
- IRB.start(__FILE__)
10
+ require 'pry'
11
+ Pry.start
@@ -0,0 +1,71 @@
1
+ require 'arel/extensions/unknown'
2
+ require 'arel/extensions/time_with_precision'
3
+ require 'arel/extensions/current_time'
4
+ require 'arel/extensions/current_date'
5
+ require 'arel/extensions/current_timestamp'
6
+ require 'arel/extensions/local_time'
7
+ require 'arel/extensions/local_timestamp'
8
+ require 'arel/extensions/current_role'
9
+ require 'arel/extensions/current_user'
10
+ require 'arel/extensions/session_user'
11
+ require 'arel/extensions/user'
12
+ require 'arel/extensions/current_catalog'
13
+ require 'arel/extensions/current_schema'
14
+ require 'arel/extensions/array'
15
+ require 'arel/extensions/indirection'
16
+ require 'arel/extensions/bit_string'
17
+ require 'arel/extensions/natural_join'
18
+ require 'arel/extensions/cross_join'
19
+ require 'arel/extensions/lateral'
20
+ require 'arel/extensions/range_function'
21
+ require 'arel/extensions/with_ordinality'
22
+ require 'arel/extensions/table'
23
+ require 'arel/extensions/row'
24
+ require 'arel/extensions/ordering'
25
+ require 'arel/extensions/all'
26
+ require 'arel/extensions/any'
27
+ require 'arel/extensions/array_subselect'
28
+ require 'arel/extensions/type_cast'
29
+ require 'arel/extensions/distinct_from'
30
+ require 'arel/extensions/not_distinct_from'
31
+ require 'arel/extensions/null_if'
32
+ require 'arel/extensions/similar'
33
+ require 'arel/extensions/not_similar'
34
+ require 'arel/extensions/not_between'
35
+ require 'arel/extensions/between_symmetric'
36
+ require 'arel/extensions/not_between_symmetric'
37
+ require 'arel/extensions/function'
38
+ require 'arel/extensions/factorial'
39
+ require 'arel/extensions/square_root'
40
+ require 'arel/extensions/cube_root'
41
+ require 'arel/extensions/modulo'
42
+ require 'arel/extensions/absolute'
43
+ require 'arel/extensions/bitwise_xor'
44
+ require 'arel/extensions/exponentiation'
45
+ require 'arel/extensions/contains'
46
+ require 'arel/extensions/contained_by'
47
+ require 'arel/extensions/overlap'
48
+ require 'arel/extensions/select_statement'
49
+ require 'arel/extensions/insert_statement'
50
+ require 'arel/extensions/default_values'
51
+ require 'arel/extensions/conflict'
52
+ require 'arel/extensions/infer'
53
+ require 'arel/extensions/set_to_default'
54
+ require 'arel/extensions/update_statement'
55
+ require 'arel/extensions/current_of_expression'
56
+ require 'arel/extensions/delete_statement'
57
+ require 'arel/extensions/least'
58
+ require 'arel/extensions/greatest'
59
+ require 'arel/extensions/generate_series'
60
+ require 'arel/extensions/rank'
61
+ require 'arel/extensions/coalesce'
62
+ require 'arel/extensions/not_equal'
63
+ require 'arel/extensions/equality'
64
+ require 'arel/extensions/named_function'
65
+ require 'arel/extensions/intersect_all'
66
+ require 'arel/extensions/except_all'
67
+
68
+ module Arel
69
+ module Extensions
70
+ end
71
+ end