YkLib 0.1.6 → 0.1.7.1

Sign up to get free protection for your applications and to get access to all the features.
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