russial 0.7.0 → 0.8.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/russial.rb +4 -2
- data/lib/russial/dictionary/defaults.rb +34 -0
- data/lib/russial/version.rb +1 -1
- metadata +3 -3
- data/lib/russial/dictionary/default_scope.rb +0 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: eaa2f6bb22f0f86b19bc1f27632baab3313fd9cb
|
4
|
+
data.tar.gz: 4d600788443661ef6452df4bb434f00c05f54239
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ca4587917b10915b91cc548cfd9470a6143db12b35a83b2eb59c3f1da6fb665e22102006cdaa1231bc0d74901532100c29039fb3b3df6b4507d749c978a8f708
|
7
|
+
data.tar.gz: 29faed5856062f3a45f8184f106050fac831493aa5426173e3f881a1bc21fc1062df234f326b554e7b43a27dca183843cc1fdb1747c8be39c6f5b1bbef152a86
|
data/lib/russial.rb
CHANGED
@@ -1,22 +1,24 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
# :nocov:
|
3
4
|
begin
|
4
5
|
require "backport_dig" unless {}.respond_to?(:dig)
|
5
6
|
rescue LoadError
|
6
7
|
puts "Please, install `backport_dig` gem or upgrade your Ruby version."
|
7
8
|
exit
|
8
9
|
end
|
10
|
+
# :nocov:
|
9
11
|
|
10
12
|
require "russial/version"
|
11
13
|
require "russial/config"
|
12
14
|
require "russial/config/configuration"
|
13
|
-
require "russial/dictionary/
|
15
|
+
require "russial/dictionary/defaults"
|
14
16
|
require "russial/dictionary/dynamic_methods"
|
15
17
|
require "russial/dictionary/initializer"
|
16
18
|
require "russial/dictionary/i18n"
|
17
19
|
|
18
20
|
class Russial
|
19
|
-
include Dictionary::
|
21
|
+
include Dictionary::Defaults
|
20
22
|
include Dictionary::I18n if defined?(I18n)
|
21
23
|
prepend Dictionary::DynamicMethods
|
22
24
|
prepend Dictionary::Initializer
|
@@ -0,0 +1,34 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
class Russial
|
3
|
+
module Dictionary
|
4
|
+
module Defaults
|
5
|
+
def default_scope
|
6
|
+
@default_scope ||= keys.first.scope
|
7
|
+
end
|
8
|
+
|
9
|
+
def default_value
|
10
|
+
@default_value ||= send(keys.first.name)
|
11
|
+
end
|
12
|
+
|
13
|
+
def result
|
14
|
+
dictionary.dig(*default_scope, path.last)
|
15
|
+
end
|
16
|
+
|
17
|
+
def to_s
|
18
|
+
default_value.to_s
|
19
|
+
end
|
20
|
+
|
21
|
+
private
|
22
|
+
|
23
|
+
def method_missing(name, *args, &block)
|
24
|
+
return super unless default_value.respond_to?(name)
|
25
|
+
|
26
|
+
default_value.send(name)
|
27
|
+
end
|
28
|
+
|
29
|
+
def respond_to_missing?(name, include_private = false)
|
30
|
+
default_value.respond_to?(name) || super
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
data/lib/russial/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: russial
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mesto.ru
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-03-
|
11
|
+
date: 2017-03-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -115,7 +115,7 @@ files:
|
|
115
115
|
- lib/russial.rb
|
116
116
|
- lib/russial/config.rb
|
117
117
|
- lib/russial/config/configuration.rb
|
118
|
-
- lib/russial/dictionary/
|
118
|
+
- lib/russial/dictionary/defaults.rb
|
119
119
|
- lib/russial/dictionary/dynamic_methods.rb
|
120
120
|
- lib/russial/dictionary/i18n.rb
|
121
121
|
- lib/russial/dictionary/initializer.rb
|