ree 1.0.30 → 1.0.31
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 +4 -4
- data/Gemfile.lock +1 -1
- data/lib/ree/dsl/object_dsl.rb +7 -39
- data/lib/ree/templates/init/ree.setup.rb +0 -7
- data/lib/ree/version.rb +1 -1
- data/lib/ree.rb +0 -13
- metadata +2 -3
- data/lib/ree/dsl/error_builder.rb +0 -39
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: a6d6548b0d788689ab62d295a88602cfe8e555ed00879898118a9fa6335e63d8
|
|
4
|
+
data.tar.gz: d36aa35b5d3e5c3b618ec5037c28590249ad8d0aefa1633a01564fe6e8806039
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0b4eeb250100dd7dd1affcd9ba71b2659b18166686082612c4929282a70f22d5b477f9468e5610df4186a6c5c2e499fc81bcd10511905172923f77cd4fc3336d
|
|
7
|
+
data.tar.gz: 0b59b6a98b4ec333c22a1f857b26d83294ba09b199dadce5e5575f64cc68fdf16f1ee6dbcf57108eb04f8dc003f9880fd04be5b975725a121cc075096b69ebf9
|
data/Gemfile.lock
CHANGED
data/lib/ree/dsl/object_dsl.rb
CHANGED
|
@@ -117,40 +117,6 @@ class Ree::ObjectDsl
|
|
|
117
117
|
@object.set_freeze(flag)
|
|
118
118
|
end
|
|
119
119
|
|
|
120
|
-
# @param [Nilor[Symbol]] code Global error code
|
|
121
|
-
# @param [Proc] proc Error DSL proc
|
|
122
|
-
def def_error(code = nil, &proc)
|
|
123
|
-
check_arg(code, :code, Symbol) if code
|
|
124
|
-
|
|
125
|
-
if !block_given?
|
|
126
|
-
raise_error("def_error should accept block with error class definition")
|
|
127
|
-
end
|
|
128
|
-
|
|
129
|
-
if code && !Ree.error_types.include?(code)
|
|
130
|
-
raise_error("Invalid error code :#{code}. Did you forget to setup it with Ree.add_error_types(*args)?")
|
|
131
|
-
end
|
|
132
|
-
|
|
133
|
-
class_name = begin
|
|
134
|
-
Ree::ErrorBuilder
|
|
135
|
-
.new(@packages_facade)
|
|
136
|
-
.build(
|
|
137
|
-
@object,
|
|
138
|
-
code,
|
|
139
|
-
&proc
|
|
140
|
-
)
|
|
141
|
-
rescue Ree::Error
|
|
142
|
-
raise_error("invalid def_error usage. Valid examples: def_error { InvalidDomainErr } or def_error(:validation) { EmailTakenErr['email taken'] }")
|
|
143
|
-
end
|
|
144
|
-
|
|
145
|
-
@object.add_const_list([class_name])
|
|
146
|
-
|
|
147
|
-
@object.errors.push(
|
|
148
|
-
Ree::ObjectError.new(
|
|
149
|
-
class_name
|
|
150
|
-
)
|
|
151
|
-
)
|
|
152
|
-
end
|
|
153
|
-
|
|
154
120
|
# @param [String] path Relative package file path ('accounts/entities/user')
|
|
155
121
|
# @param [Proc] proc Import constants proc
|
|
156
122
|
def link_file(path, import_proc = nil)
|
|
@@ -227,12 +193,14 @@ class Ree::ObjectDsl
|
|
|
227
193
|
raise Ree::Error.new("Mount as should be one of #{MOUNT_AS.inspect}", :invalid_dsl_usage)
|
|
228
194
|
end
|
|
229
195
|
|
|
230
|
-
|
|
231
|
-
File.
|
|
232
|
-
|
|
196
|
+
if !Ree.irb_mode?
|
|
197
|
+
object_name_from_path = if File.exist?(path)
|
|
198
|
+
File.basename(path, ".*").to_sym
|
|
199
|
+
end
|
|
233
200
|
|
|
234
|
-
|
|
235
|
-
|
|
201
|
+
if object_name_from_path && object_name != object_name_from_path
|
|
202
|
+
raise Ree::Error.new("Object name does not correspond to a file name (#{object_name}, #{object_name_from_path}.rb). Fix object name or rename object file", :invalid_dsl_usage)
|
|
203
|
+
end
|
|
236
204
|
end
|
|
237
205
|
|
|
238
206
|
class_name = klass.to_s
|
data/lib/ree/version.rb
CHANGED
data/lib/ree.rb
CHANGED
|
@@ -13,7 +13,6 @@ module Ree
|
|
|
13
13
|
autoload :Contracts, 'ree/contracts'
|
|
14
14
|
autoload :DomainError, 'ree/dsl/domain_error'
|
|
15
15
|
autoload :Error, 'ree/error'
|
|
16
|
-
autoload :ErrorBuilder, 'ree/dsl/error_builder'
|
|
17
16
|
autoload :ErrorDsl, 'ree/dsl/error_dsl'
|
|
18
17
|
autoload :FnDSL, 'ree/fn_dsl'
|
|
19
18
|
autoload :Gen, 'ree/gen'
|
|
@@ -262,18 +261,6 @@ module Ree
|
|
|
262
261
|
end
|
|
263
262
|
end
|
|
264
263
|
end
|
|
265
|
-
|
|
266
|
-
def error_types
|
|
267
|
-
@error_types ||= []
|
|
268
|
-
end
|
|
269
|
-
|
|
270
|
-
def add_error_types(*args)
|
|
271
|
-
args.each do |arg|
|
|
272
|
-
check_arg(arg, :error, Symbol)
|
|
273
|
-
end
|
|
274
|
-
|
|
275
|
-
@error_types = (error_types + args).uniq
|
|
276
|
-
end
|
|
277
264
|
end
|
|
278
265
|
end
|
|
279
266
|
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: ree
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0.
|
|
4
|
+
version: 1.0.31
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ruslan Gatiyatov
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2023-08-
|
|
11
|
+
date: 2023-08-30 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: commander
|
|
@@ -143,7 +143,6 @@ files:
|
|
|
143
143
|
- lib/ree/core/path_helper.rb
|
|
144
144
|
- lib/ree/dsl/build_package_dsl.rb
|
|
145
145
|
- lib/ree/dsl/domain_error.rb
|
|
146
|
-
- lib/ree/dsl/error_builder.rb
|
|
147
146
|
- lib/ree/dsl/error_dsl.rb
|
|
148
147
|
- lib/ree/dsl/import_dsl.rb
|
|
149
148
|
- lib/ree/dsl/link_import_builder.rb
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal = true
|
|
2
|
-
|
|
3
|
-
class Ree::ErrorBuilder
|
|
4
|
-
def initialize(packages_facade)
|
|
5
|
-
@packages_facade = packages_facade
|
|
6
|
-
end
|
|
7
|
-
|
|
8
|
-
def build(object, code, &proc)
|
|
9
|
-
result = Ree::ErrorDsl.new.execute(object.klass, &proc)
|
|
10
|
-
|
|
11
|
-
if result.is_a?(Ree::DomainError)
|
|
12
|
-
object.klass.send(:remove_const, result.name) rescue nil
|
|
13
|
-
result = Ree::ErrorDsl.new.execute(object.klass, &proc)
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
if !result.is_a?(Ree::ErrorDsl::ClassConstant)
|
|
17
|
-
raise Ree::Error.new("invalid def_error usage", :invalid_dsl_usage)
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
object.klass.send(:remove_const, result.name) rescue nil
|
|
21
|
-
|
|
22
|
-
object.klass.class_eval <<-ruby_eval, __FILE__, __LINE__ + 1
|
|
23
|
-
class #{result.name} < Ree::DomainError
|
|
24
|
-
attr_reader :code, :extra_code, :error_code, :package_name, :object_name
|
|
25
|
-
|
|
26
|
-
def initialize(msg = nil, extra_code = nil)
|
|
27
|
-
@code = #{code.inspect}
|
|
28
|
-
@extra_code = extra_code
|
|
29
|
-
@error_code = :#{Ree::StringUtils.underscore(result.name)}
|
|
30
|
-
@package_name = :#{object.package_name}
|
|
31
|
-
@object_name = :#{object.name}
|
|
32
|
-
super(msg || #{result.message.inspect})
|
|
33
|
-
end
|
|
34
|
-
end
|
|
35
|
-
ruby_eval
|
|
36
|
-
|
|
37
|
-
result.name
|
|
38
|
-
end
|
|
39
|
-
end
|