YkLib 0.1.6 → 0.1.7.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 054dc1b31dc944a07957a5acd11c85226093f1416dffd22a1f656eafa85d2781
4
- data.tar.gz: d4b43d5ba8fc274227b5a3fb40012e37f434551bbcca16365d9ee7f00c41a3d7
3
+ metadata.gz: efa8e1fc11d663d3d634f85be96581123933ee699832dc0572e8609882b103b1
4
+ data.tar.gz: 14a75a126e9f3450d226cbda1c3fe0e7aaeb25ff51455330bb893474d29792bc
5
5
  SHA512:
6
- metadata.gz: 8d93328d462cabd3dc38cd7234f9b79038c218432dafe1878805e2bc10c5ab18d684b6e366e71549bcdd60cecd76cf76efb924ada0a0fbb2aa0b5134e61a79c9
7
- data.tar.gz: 47f59ba5da8367306b5bf2f3362b6a2500184b3aacc14b7ef710be7e4a121f9d13df818f77faad2fac875f19cd1b5faae0f6216d1730dfad072373671d2dc6ce
6
+ metadata.gz: 6227929d7e2ffddde5db4f41d86adff14ee2150bd10795dbbe7c113beb6923dc2972ef9d88201117fd308c2b3a109708d225cf238e986843e172ce9422f355ce
7
+ data.tar.gz: d01a0e6dc1d2b31d91563050fe7de9c43321e61ce06b8d18ec5dbbcf870e51cf8d3e97cd3d581380921828196ea230fc16fbf421ad62a16c6135d9213145e71d
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- YkLib (0.1.6)
4
+ YkLib (0.1.7.1)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/lib/Yk/misc_tz.rb CHANGED
@@ -3,6 +3,37 @@
3
3
  #require 'continuation'
4
4
  require 'binding_of_caller'
5
5
 
6
+ YK_MODULE_HOOK = Hash.new{|h, k| h[k] = []}
7
+
8
+ def if_class mname, &bl
9
+ if Kernel.const_defined?(smod)
10
+ Kernel.const_get(smod).module_eval &bl
11
+ else
12
+ YK_MODULE_HOOK[mname].push bl
13
+ end
14
+ end
15
+
16
+ def if_module mname, &bl
17
+ if_class mname, &bl
18
+ end
19
+
20
+ module Kernel
21
+ __seed__ = rand(10000000000)
22
+ eval %{
23
+ alias __require__#{__seed__} require
24
+ def require *to_require
25
+ get_defs = ->{YK_MODULE_HOOK.each_key.select{::Kernel::const_defined?(_1)}}
26
+ pre = get_defs[]
27
+ __require__#{__seed__} *to_require
28
+ (get_defs[] - pre).each do |smod|
29
+ YK_MODULE_HOOK[smod].each do |bl|
30
+ Kernel.const_get(smod).module_eval &bl
31
+ end
32
+ end
33
+ end
34
+ }
35
+ end
36
+
6
37
 
7
38
  def die msg = nil
8
39
  if msg
data/lib/Yk/path_aux.rb CHANGED
@@ -881,3 +881,17 @@ class Array
881
881
  File.open(self, *args, &bl)
882
882
  end
883
883
  end
884
+
885
+
886
+ if_module :YAML do
887
+ class<<self;self;end.class_eval do
888
+ alias __load__ load
889
+ def load *args
890
+ c = class << args[0];self;end
891
+ c.undef_method :read
892
+ __load__ *args
893
+ end
894
+ end
895
+ end
896
+
897
+
data/lib/YkLib/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module YkLib
2
- VERSION = "0.1.6"
2
+ VERSION = "0.1.7.1"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: YkLib
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - yougain