kyanite 0.5.17 → 0.6.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.
- data/History.txt +3 -0
- data/Manifest.txt +1 -4
- data/Rakefile.rb +4 -4
- data/console.rb +9 -0
- data/lib/kyanite.rb +1 -2
- data/lib/kyanite/array/array.rb +4 -4
- data/lib/kyanite/array/array2.rb +4 -2
- data/lib/kyanite/basics.rb +1 -3
- data/lib/kyanite/dictionary.rb +6 -5
- data/lib/kyanite/enumerable/enumerable_enumerables.rb +6 -5
- data/lib/kyanite/enumerable/enumerable_numerics.rb +13 -13
- data/lib/kyanite/general.rb +0 -1
- data/lib/kyanite/general/classutils.rb +10 -12
- data/lib/kyanite/general/object.rb +13 -13
- data/lib/kyanite/hash.rb +9 -8
- data/lib/kyanite/numeric/integer.rb +4 -4
- data/lib/kyanite/numeric/numeric.rb +4 -3
- data/lib/kyanite/operation/regexp.rb +4 -3
- data/lib/kyanite/range.rb +29 -8
- data/lib/kyanite/set.rb +30 -19
- data/lib/kyanite/string/cast.rb +9 -9
- data/lib/kyanite/string/chars.rb +16 -16
- data/lib/kyanite/string/chars_const.rb +30 -20
- data/lib/kyanite/string/diff.rb +15 -15
- data/lib/kyanite/string/div.rb +6 -4
- data/lib/kyanite/string/include.rb +6 -6
- data/lib/kyanite/string/list.rb +8 -7
- data/lib/kyanite/string/mgsub.rb +5 -5
- data/lib/kyanite/string/nested.rb +10 -9
- data/lib/kyanite/string/random.rb +5 -5
- data/lib/kyanite/string/split.rb +12 -11
- data/lib/kyanite/tree.rb +1 -1
- data/test/_start_all.rb +2 -1
- data/test/array/test_matrix2.rb +2 -1
- data/test/general/test_classutils.rb +2 -0
- data/test/general/test_true_false.rb +1 -1
- data/test/test_dictionary.rb +1 -1
- data/test/test_hash.rb +1 -1
- data/test/test_optimizer.rb +1 -1
- data/test/test_range.rb +1 -1
- data/test/test_set.rb +2 -1
- data/test/test_tree.rb +1 -1
- metadata +19 -7
- data/lib/kyanite/general/nil.rb +0 -88
- data/lib/kyanite/nil.rb +0 -3
- data/script/console.rb +0 -10
- data/test/general/test_nil.rb +0 -48
data/History.txt
CHANGED
data/Manifest.txt
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
console.rb
|
1
2
|
Div
|
2
3
|
History.txt
|
3
4
|
License.txt
|
@@ -24,14 +25,12 @@ lib/kyanite/general.rb
|
|
24
25
|
lib/kyanite/general/callerutils.rb
|
25
26
|
lib/kyanite/general/classutils.rb
|
26
27
|
lib/kyanite/general/kernel.rb
|
27
|
-
lib/kyanite/general/nil.rb
|
28
28
|
lib/kyanite/general/object.rb
|
29
29
|
lib/kyanite/general/true_false.rb
|
30
30
|
lib/kyanite/general/undoable.rb
|
31
31
|
lib/kyanite/hash.rb
|
32
32
|
lib/kyanite/hoe.rb
|
33
33
|
lib/kyanite/matrix2.rb
|
34
|
-
lib/kyanite/nil.rb
|
35
34
|
lib/kyanite/numeric.rb
|
36
35
|
lib/kyanite/numeric/float.rb
|
37
36
|
lib/kyanite/numeric/integer.rb
|
@@ -63,7 +62,6 @@ lib/kyanite/symbol.rb
|
|
63
62
|
lib/kyanite/tree.rb
|
64
63
|
lib/kyanite/undoable.rb
|
65
64
|
lib/kyanite/unit_test.rb
|
66
|
-
script/console.rb
|
67
65
|
test/_start_all.rb
|
68
66
|
test/array/test_array.rb
|
69
67
|
test/array/test_matrix2.rb
|
@@ -72,7 +70,6 @@ test/enumerable/test_enumerable_numerics.rb
|
|
72
70
|
test/enumerable/test_enumerable_strings.rb
|
73
71
|
test/enumerable/test_structure.rb
|
74
72
|
test/general/test_classutils.rb
|
75
|
-
test/general/test_nil.rb
|
76
73
|
test/general/test_object.rb
|
77
74
|
test/general/test_true_false.rb
|
78
75
|
test/numeric/test_numeric_integer.rb
|
data/Rakefile.rb
CHANGED
@@ -24,12 +24,12 @@ $hoe = Hoe.spec Kyanite.projectname do
|
|
24
24
|
|
25
25
|
developer('Bjoern Klippstein', 'klippstein@klippstein.com')
|
26
26
|
summary = 'General toolbox like Facets or ActiveSupport.'
|
27
|
-
|
28
|
-
remote_rdoc_dir = '' # Release to root only one project
|
27
|
+
extra_deps << ['transparent_nil', '>= 0.1.3']
|
29
28
|
extra_deps << ['activesupport', '>= 3.2.8']
|
30
29
|
extra_deps << ['facets', '>= 2.9.3']
|
31
30
|
extra_deps << ['rubytree', '>= 0.8.3']
|
32
|
-
|
31
|
+
remote_rdoc_dir = '' # Release to root only one project
|
32
|
+
urls = [["http://#{Kyanite.github_username}.github.com/#{Kyanite.projectname}/"]]
|
33
33
|
|
34
34
|
|
35
35
|
end
|
@@ -91,7 +91,7 @@ remove_task 'deps:email'
|
|
91
91
|
remove_task 'install_gem'
|
92
92
|
remove_task 'multi'
|
93
93
|
remove_task 'newb'
|
94
|
-
Dir['tasks/**/*.rake'].each { |t| load t }
|
94
|
+
#Dir['tasks/**/*.rake'].each { |t| load t }
|
95
95
|
|
96
96
|
|
97
97
|
|
data/console.rb
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# File: script/console
|
3
|
+
irb = RUBY_PLATFORM =~ /(:?mswin|mingw)/ ? 'irb.bat' : 'irb'
|
4
|
+
libs = " -r irb/completion"
|
5
|
+
libs << " -r #{File.dirname(__FILE__) + '/init.rb'}"
|
6
|
+
|
7
|
+
puts "Welcome to Kyanite gem"
|
8
|
+
|
9
|
+
exec "#{irb} #{libs} --simple-prompt --noreadline"
|
data/lib/kyanite.rb
CHANGED
@@ -16,7 +16,7 @@ end
|
|
16
16
|
|
17
17
|
module Kyanite #:nodoc
|
18
18
|
|
19
|
-
VERSION = '0.
|
19
|
+
VERSION = '0.6.0'
|
20
20
|
|
21
21
|
end
|
22
22
|
|
@@ -28,7 +28,6 @@ end
|
|
28
28
|
require 'kyanite/general'
|
29
29
|
require 'kyanite/hash'
|
30
30
|
# require 'kyanite/matrix2' # ist schon in array
|
31
|
-
# require 'kyanite/nil' # ist schon in general
|
32
31
|
require 'kyanite/numeric'
|
33
32
|
# require 'kyanite/operation' # nur manuell
|
34
33
|
require 'kyanite/optimizer'
|
data/lib/kyanite/array/array.rb
CHANGED
data/lib/kyanite/array/array2.rb
CHANGED
@@ -14,8 +14,10 @@ class Array
|
|
14
14
|
|
15
15
|
end
|
16
16
|
|
17
|
-
|
18
|
-
|
17
|
+
if defined? TransparentNil
|
18
|
+
class NilClass
|
19
|
+
def row_to_nil; nil; end
|
20
|
+
end
|
19
21
|
end
|
20
22
|
|
21
23
|
# Ein Array2 ist eine spezielle Form von Array, nämlich immer zweidimensional. Siehe auch Matrix2!
|
data/lib/kyanite/basics.rb
CHANGED
@@ -12,8 +12,7 @@
|
|
12
12
|
# require 'kyanite/general'
|
13
13
|
# require 'kyanite/general/callerutils'
|
14
14
|
require 'kyanite/general/classutils'
|
15
|
-
require 'kyanite/general/kernel'
|
16
|
-
require 'kyanite/general/nil'
|
15
|
+
require 'kyanite/general/kernel'
|
17
16
|
require 'kyanite/general/object'
|
18
17
|
# require 'kyanite/general/optimizer'
|
19
18
|
require 'kyanite/general/true_false'
|
@@ -45,7 +44,6 @@
|
|
45
44
|
# require 'kyanite/dictionary'
|
46
45
|
require 'kyanite/hash'
|
47
46
|
# require 'kyanite/matrix2'
|
48
|
-
# require 'kyanite/nil' # ist schon in general
|
49
47
|
require 'kyanite/range'
|
50
48
|
# require 'kyanite/set'
|
51
49
|
require 'kyanite/symbol'
|
data/lib/kyanite/dictionary.rb
CHANGED
@@ -94,17 +94,18 @@ class Array
|
|
94
94
|
end
|
95
95
|
|
96
96
|
|
97
|
-
|
97
|
+
if defined? TransparentNil
|
98
|
+
class NilClass
|
98
99
|
|
99
|
-
|
100
|
-
|
100
|
+
# Rückgabe: Leeres Dictionary
|
101
|
+
def to_dictionary; Dictionary.new; end
|
101
102
|
|
102
|
-
|
103
|
+
def fetch_by_index(*a); nil; end
|
103
104
|
|
105
|
+
end
|
104
106
|
end
|
105
107
|
|
106
108
|
|
107
|
-
|
108
109
|
# ---------------------------------------------------------
|
109
110
|
# Ausprobieren
|
110
111
|
#
|
@@ -68,14 +68,15 @@ class Array
|
|
68
68
|
end
|
69
69
|
|
70
70
|
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
71
|
+
if defined? TransparentNil
|
72
|
+
class NilClass
|
73
|
+
def transpose!; nil; end
|
74
|
+
def transpose; nil; end
|
75
|
+
def rectangle; nil; end
|
76
|
+
end
|
75
77
|
end
|
76
78
|
|
77
79
|
|
78
80
|
|
79
81
|
|
80
82
|
|
81
|
-
|
@@ -138,21 +138,21 @@ class Array
|
|
138
138
|
end
|
139
139
|
|
140
140
|
|
141
|
-
|
142
|
-
class NilClass
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
141
|
+
if defined? TransparentNil
|
142
|
+
class NilClass
|
143
|
+
def average; nil; end
|
144
|
+
def avg; nil; end
|
145
|
+
def mean; nil; end
|
146
|
+
def mean_arithmetric; nil; end
|
147
|
+
def mean_geometric; nil; end
|
148
|
+
def mean_harmonic(*a); nil; end
|
149
|
+
def parallel(*a); nil; end
|
150
|
+
def prd; nil; end
|
151
|
+
def sum; nil; end
|
152
|
+
def summation; nil; end
|
153
|
+
end
|
153
154
|
end
|
154
155
|
|
155
|
-
|
156
156
|
# ==================================================================================
|
157
157
|
# Ausprobieren
|
158
158
|
#
|
data/lib/kyanite/general.rb
CHANGED
@@ -195,21 +195,19 @@ class String
|
|
195
195
|
|
196
196
|
end # class
|
197
197
|
|
198
|
+
if defined? TransparentNil
|
199
|
+
class NilClass
|
198
200
|
|
199
|
-
|
201
|
+
# Rückgabe: Leerer String
|
202
|
+
def to_classname; ''; end
|
200
203
|
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
def demodulize; nil; end
|
207
|
-
def to_class; nil; end
|
208
|
-
def underscore; nil; end
|
209
|
-
|
210
|
-
|
211
|
-
|
204
|
+
def camelize; nil; end
|
205
|
+
def constantize; nil; end
|
206
|
+
def demodulize; nil; end
|
207
|
+
def to_class; nil; end
|
208
|
+
def underscore; nil; end
|
212
209
|
|
210
|
+
end
|
213
211
|
end
|
214
212
|
|
215
213
|
|
@@ -85,21 +85,21 @@ end
|
|
85
85
|
|
86
86
|
|
87
87
|
|
88
|
-
|
89
|
-
class NilClass
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
88
|
+
if defined? TransparentNil
|
89
|
+
class NilClass
|
90
|
+
|
91
|
+
# Rückgabe: false
|
92
|
+
def blank?; false; end
|
93
|
+
|
94
|
+
# Rückgabe: false
|
95
|
+
def is_numeric?; false; end
|
96
|
+
|
97
|
+
def to_nil; nil; end
|
98
|
+
def to_nil_unless(*a); nil; end
|
99
|
+
def name_of_constant(*a); nil; end
|
100
|
+
end
|
100
101
|
end
|
101
102
|
|
102
103
|
|
103
104
|
|
104
105
|
|
105
|
-
|
data/lib/kyanite/hash.rb
CHANGED
@@ -148,14 +148,15 @@ class Hash
|
|
148
148
|
|
149
149
|
end #class
|
150
150
|
|
151
|
-
|
152
|
-
class NilClass
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
151
|
+
if defined? TransparentNil
|
152
|
+
class NilClass
|
153
|
+
def compact_keys!; nil; end
|
154
|
+
def compact_values!; nil; end
|
155
|
+
def delete_key(*a); nil; end
|
156
|
+
def delete_value(*a); nil; end
|
157
|
+
def arrayize(*a); nil; end
|
158
|
+
def fuzzyget(*a); nil; end
|
159
|
+
end
|
159
160
|
end
|
160
161
|
|
161
162
|
|
data/lib/kyanite/range.rb
CHANGED
@@ -1,4 +1,9 @@
|
|
1
1
|
# ruby encoding: utf-8
|
2
|
+
# ü
|
3
|
+
if $0 == __FILE__
|
4
|
+
require File.join(File.dirname(__FILE__), '..', '..', 'smart_load_path.rb' )
|
5
|
+
smart_load_path
|
6
|
+
end
|
2
7
|
require 'facets/range/combine'
|
3
8
|
require 'facets/range/within'
|
4
9
|
require 'kyanite/enumerable' # is_collection? ist für Ranges false
|
@@ -46,16 +51,32 @@ end # class
|
|
46
51
|
|
47
52
|
|
48
53
|
|
54
|
+
if defined? TransparentNil
|
55
|
+
class NilClass
|
56
|
+
def invert_index; nil; end
|
57
|
+
def umbrella(*a); nil; end
|
58
|
+
def combine(*a); nil; end
|
59
|
+
def within?(*a); nil; end
|
60
|
+
end
|
61
|
+
end # if defined? TransparentNil
|
62
|
+
|
63
|
+
# ==================================================================================
|
64
|
+
# Ausprobieren
|
65
|
+
#
|
66
|
+
if $0 == __FILE__
|
49
67
|
|
50
|
-
class NilClass
|
51
|
-
def invert_index; nil; end
|
52
|
-
def umbrella(*a); nil; end
|
53
|
-
def combine(*a); nil; end
|
54
|
-
def within?(*a); nil; end
|
55
|
-
end
|
56
68
|
|
57
|
-
|
58
|
-
|
69
|
+
# puts TransparentNil::VERSION
|
70
|
+
puts (nil.respond_to? :invert_index).inspect
|
71
|
+
# puts nil.invert_index
|
72
|
+
|
73
|
+
# test = [:a, :b, :c].to_ordered_set
|
74
|
+
# see :test # .inspect_see
|
75
|
+
# see_pp test
|
76
|
+
# seee.process_print( test, :method => :pp )
|
77
|
+
# see :test# .inspect_see
|
78
|
+
|
79
|
+
end
|
59
80
|
|
60
81
|
|
61
82
|
|
data/lib/kyanite/set.rb
CHANGED
@@ -1,4 +1,10 @@
|
|
1
1
|
# ruby encoding: utf-8
|
2
|
+
# ü
|
3
|
+
if $0 == __FILE__
|
4
|
+
require File.join(File.dirname(__FILE__), '..', '..', 'smart_load_path.rb' )
|
5
|
+
smart_load_path
|
6
|
+
end
|
7
|
+
|
2
8
|
require 'set'
|
3
9
|
require 'kyanite/enumerable' # is_collection?
|
4
10
|
require 'kyanite/general/kernel' # silence_warnings
|
@@ -199,29 +205,31 @@ class Array
|
|
199
205
|
end # class
|
200
206
|
|
201
207
|
|
208
|
+
class Object
|
202
209
|
|
210
|
+
# Liefert ein Set mit einem Element
|
211
|
+
#
|
212
|
+
def to_set; Set.new([self]); end
|
213
|
+
|
214
|
+
end
|
203
215
|
|
204
|
-
class NilClass
|
205
216
|
|
206
|
-
|
207
|
-
|
217
|
+
if defined? TransparentNil
|
218
|
+
class NilClass
|
208
219
|
|
209
|
-
|
210
|
-
|
220
|
+
# Rückgabe: Leeres Set
|
221
|
+
def to_set; Set.new; end
|
211
222
|
|
212
|
-
|
213
|
-
|
214
|
-
end
|
223
|
+
# Rückgabe: Leeres SortedSet
|
224
|
+
def to_sorted_set; SortedSet.new; end
|
215
225
|
|
226
|
+
# Rückgabe: Leeres OrderedSet
|
227
|
+
def to_ordered_set; OrderedSet.new; end
|
228
|
+
end
|
229
|
+
end
|
216
230
|
|
217
231
|
|
218
|
-
class Object
|
219
232
|
|
220
|
-
# Liefert ein Set mit einem Element
|
221
|
-
#
|
222
|
-
def to_set; Set.new([self]); end
|
223
|
-
|
224
|
-
end
|
225
233
|
|
226
234
|
|
227
235
|
# ==================================================================================
|
@@ -229,11 +237,14 @@ end
|
|
229
237
|
#
|
230
238
|
if $0 == __FILE__
|
231
239
|
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
see :test# .inspect_see
|
240
|
+
|
241
|
+
puts nil.to_set
|
242
|
+
|
243
|
+
# test = [:a, :b, :c].to_ordered_set
|
244
|
+
# see :test # .inspect_see
|
245
|
+
# see_pp test
|
246
|
+
# seee.process_print( test, :method => :pp )
|
247
|
+
# see :test# .inspect_see
|
237
248
|
|
238
249
|
end
|
239
250
|
|
data/lib/kyanite/string/cast.rb
CHANGED
@@ -100,16 +100,16 @@ class String
|
|
100
100
|
|
101
101
|
end
|
102
102
|
|
103
|
-
|
104
|
-
class NilClass
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
103
|
+
if defined? TransparentNil
|
104
|
+
class NilClass
|
105
|
+
def to_identifier; nil; end
|
106
|
+
def to_integer; nil; end
|
107
|
+
def to_integer_optional; nil; end
|
108
|
+
def to_nil(*a); nil; end
|
109
|
+
def to_x; nil; end
|
110
|
+
def from_x; nil; end
|
111
|
+
end
|
111
112
|
end
|
112
113
|
|
113
114
|
|
114
115
|
|
115
|
-
|
data/lib/kyanite/string/chars.rb
CHANGED
@@ -160,24 +160,24 @@ end
|
|
160
160
|
|
161
161
|
|
162
162
|
|
163
|
-
|
164
|
-
class NilClass
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
163
|
+
if defined? TransparentNil
|
164
|
+
class NilClass
|
165
|
+
|
166
|
+
# Rückgabe: false
|
167
|
+
def capitalized?; false; end
|
168
|
+
|
169
|
+
def reduce94; nil; end
|
170
|
+
def reduce94!; nil; end
|
171
|
+
def reduce53; nil; end
|
172
|
+
def reduce53!; nil; end
|
173
|
+
def downcase2; nil; end
|
174
|
+
def downcase2!; nil; end
|
175
|
+
def mysqlize; nil; end
|
176
|
+
def upcase2; nil; end
|
177
|
+
def upcase2!; nil; end
|
178
|
+
end
|
178
179
|
end
|
179
180
|
|
180
|
-
|
181
181
|
# -----------------------------------------------------------------------------------------
|
182
182
|
# Ausprobieren
|
183
183
|
#
|
@@ -1,7 +1,11 @@
|
|
1
1
|
# ruby encoding: utf-8
|
2
2
|
|
3
|
+
if $0 == __FILE__
|
4
|
+
require File.join(File.dirname(__FILE__), '..', '..', '..', 'smart_load_path.rb' )
|
5
|
+
smart_load_path
|
6
|
+
end
|
7
|
+
|
3
8
|
require 'hashery'
|
4
|
-
require 'kyanite/nil'
|
5
9
|
require 'kyanite/string/div'
|
6
10
|
|
7
11
|
|
@@ -72,8 +76,10 @@ unless defined?(TR_UPCASE_ALL_REGEXP)
|
|
72
76
|
# Spaces entfernen
|
73
77
|
allkeys.split(//).each do |key|
|
74
78
|
next unless base[key]
|
75
|
-
base[key].
|
76
|
-
base[key
|
79
|
+
next if base[key].nil?
|
80
|
+
# base[key].strip!.gsub!(' ','').gsub!(' ','')
|
81
|
+
base[key].strip!.gsub!(' ','')
|
82
|
+
base[key.upcase].strip!.gsub!(' ','')
|
77
83
|
end
|
78
84
|
|
79
85
|
|
@@ -145,26 +151,30 @@ end # unless defined?
|
|
145
151
|
#
|
146
152
|
if $0 == __FILE__ then
|
147
153
|
|
148
|
-
|
149
|
-
|
154
|
+
|
155
|
+
puts TR_DOWNCASE_ONLY.inspect
|
156
|
+
|
157
|
+
|
158
|
+
# require 'perception'
|
159
|
+
# rawlog "\n----------------------------------------------------------\n\n"
|
150
160
|
|
151
|
-
rawlog 'TR_DOWNCASE_ONLY= '
|
152
|
-
rawlog TR_DOWNCASE_ONLY
|
153
|
-
rawlog "\n"
|
161
|
+
# rawlog 'TR_DOWNCASE_ONLY= '
|
162
|
+
# rawlog TR_DOWNCASE_ONLY
|
163
|
+
# rawlog "\n"
|
154
164
|
|
155
|
-
rawlog 'TR_FULL= '
|
156
|
-
rawlog TR_FULL
|
157
|
-
rawlog "\n"
|
158
|
-
rawlog 'TR_REDUCED= '
|
159
|
-
rawlog TR_REDUCED
|
160
|
-
rawlog "\n"
|
165
|
+
# rawlog 'TR_FULL= '
|
166
|
+
# rawlog TR_FULL
|
167
|
+
# rawlog "\n"
|
168
|
+
# rawlog 'TR_REDUCED= '
|
169
|
+
# rawlog TR_REDUCED
|
170
|
+
# rawlog "\n"
|
161
171
|
|
162
|
-
rawlog 'TR_UPCASE= '
|
163
|
-
rawlog TR_UPCASE
|
164
|
-
rawlog "\n"
|
165
|
-
rawlog 'TR_DOWNCASE= '
|
166
|
-
rawlog TR_DOWNCASE
|
167
|
-
rawlog "\n"
|
172
|
+
# rawlog 'TR_UPCASE= '
|
173
|
+
# rawlog TR_UPCASE
|
174
|
+
# rawlog "\n"
|
175
|
+
# rawlog 'TR_DOWNCASE= '
|
176
|
+
# rawlog TR_DOWNCASE
|
177
|
+
# rawlog "\n"
|
168
178
|
|
169
179
|
|
170
180
|
|
data/lib/kyanite/string/diff.rb
CHANGED
@@ -64,24 +64,24 @@ class String
|
|
64
64
|
end
|
65
65
|
|
66
66
|
|
67
|
-
|
68
|
-
class NilClass
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
67
|
+
if defined? TransparentNil
|
68
|
+
class NilClass
|
69
|
+
|
70
|
+
# Rückgabe: Leerer String,
|
71
|
+
# siehe String#overlap
|
72
|
+
def overlap(*a); ''; end
|
73
|
+
|
74
|
+
# Rückgabe: b,
|
75
|
+
# siehe String#diff
|
76
|
+
def diff(b); b; end
|
77
|
+
|
78
|
+
# Rückgabe: ['', b],
|
79
|
+
# siehe String#overlapdiff
|
80
|
+
def overlapdiff(b); ['', b]; end
|
81
|
+
end
|
81
82
|
end
|
82
83
|
|
83
84
|
|
84
85
|
|
85
86
|
|
86
87
|
|
87
|
-
|
data/lib/kyanite/string/div.rb
CHANGED
@@ -26,15 +26,15 @@ class String
|
|
26
26
|
end # def
|
27
27
|
end
|
28
28
|
|
29
|
+
if defined? TransparentNil
|
30
|
+
class NilClass
|
29
31
|
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
def include?(*a); false; end
|
32
|
+
# Rückgabe: false
|
33
|
+
# redundante Definition!
|
34
|
+
def include?(*a); false; end
|
35
|
+
end
|
35
36
|
end
|
36
37
|
|
37
|
-
|
38
38
|
# -----------------------------------------------------------------------------------------
|
39
39
|
# ausprobieren
|
40
40
|
#
|
data/lib/kyanite/string/list.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
# ruby encoding: utf-8
|
2
|
-
require '
|
2
|
+
require 'transparent_nil'
|
3
3
|
require 'kyanite/symbol'
|
4
4
|
|
5
5
|
class String
|
@@ -24,7 +24,7 @@ class String
|
|
24
24
|
|
25
25
|
# einzelnen String oder einzelnes Symbol angegeben -> ohne Separator ausgeben
|
26
26
|
if elemente.kind_of?(String) || !elemente.respond_to?(:each_index)
|
27
|
-
e = elemente.dup
|
27
|
+
e = elemente.dup
|
28
28
|
e = yield e if block_given?
|
29
29
|
return "#{self}#{options[:pre]}#{e}#{options[:post]}"
|
30
30
|
end
|
@@ -75,10 +75,11 @@ class String
|
|
75
75
|
|
76
76
|
end
|
77
77
|
|
78
|
-
|
79
|
-
class NilClass
|
80
|
-
|
81
|
-
|
82
|
-
|
78
|
+
if defined? TransparentNil
|
79
|
+
class NilClass
|
80
|
+
def list_with(*a); nil; end
|
81
|
+
def sql_regexp_for_kommaliste; nil; end
|
82
|
+
def enum_to_array; nil; end
|
83
|
+
end
|
83
84
|
end
|
84
85
|
|
data/lib/kyanite/string/mgsub.rb
CHANGED
@@ -26,11 +26,11 @@ class String
|
|
26
26
|
|
27
27
|
end # class
|
28
28
|
|
29
|
-
|
30
|
-
class NilClass
|
31
|
-
|
32
|
-
end
|
33
|
-
|
29
|
+
if defined? TransparentNil
|
30
|
+
class NilClass
|
31
|
+
def mgsub(*a); nil; end
|
32
|
+
end
|
33
|
+
end
|
34
34
|
|
35
35
|
|
36
36
|
# -----------------------------------------------------------------------------------------
|
@@ -217,18 +217,19 @@ class String
|
|
217
217
|
end # class
|
218
218
|
|
219
219
|
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
220
|
+
if defined? TransparentNil
|
221
|
+
class NilClass
|
222
|
+
|
223
|
+
# Rückgabe: 0
|
224
|
+
def nestinglevel; 0; end
|
225
|
+
|
226
|
+
def anti; nil; end
|
227
|
+
def index_bracket; nil; end
|
228
|
+
def mask(*a); nil; end
|
229
|
+
end
|
228
230
|
end
|
229
231
|
|
230
232
|
|
231
|
-
|
232
233
|
# ------------------------------------------------------------------------------
|
233
234
|
# Tests
|
234
235
|
#
|
data/lib/kyanite/string/split.rb
CHANGED
@@ -129,16 +129,17 @@ class String
|
|
129
129
|
end
|
130
130
|
|
131
131
|
|
132
|
-
|
132
|
+
if defined? TransparentNil
|
133
|
+
class NilClass
|
133
134
|
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
135
|
+
# Rückgabe: Leerer String,
|
136
|
+
# siehe String#split
|
137
|
+
def cut(*a); ''; end
|
138
|
+
|
139
|
+
def nchar(*a); nil; end
|
140
|
+
def split_by_index(*a); nil; end
|
141
|
+
def extract(*a); nil; end
|
142
|
+
def split_numeric; nil; end
|
143
|
+
def without_versioninfo; nil; end
|
144
|
+
end
|
143
145
|
end
|
144
|
-
|
data/lib/kyanite/tree.rb
CHANGED
data/test/_start_all.rb
CHANGED
data/test/array/test_matrix2.rb
CHANGED
@@ -5,9 +5,10 @@ if $0 == __FILE__
|
|
5
5
|
smart_load_path
|
6
6
|
end
|
7
7
|
|
8
|
+
require 'transparent_nil' unless defined? TransparentNil
|
8
9
|
require 'kyanite/unit_test'
|
9
10
|
require 'kyanite/matrix2'
|
10
|
-
require '
|
11
|
+
require 'transparent_nil'
|
11
12
|
|
12
13
|
# require 'benchmark'
|
13
14
|
# include Benchmark
|
data/test/test_dictionary.rb
CHANGED
data/test/test_hash.rb
CHANGED
data/test/test_optimizer.rb
CHANGED
data/test/test_range.rb
CHANGED
data/test/test_set.rb
CHANGED
@@ -1,10 +1,11 @@
|
|
1
1
|
# ruby encoding: utf-8
|
2
2
|
# ü
|
3
3
|
if $0 == __FILE__
|
4
|
-
require File.join(File.dirname(__FILE__), '..', '
|
4
|
+
require File.join(File.dirname(__FILE__), '..', 'smart_load_path.rb' )
|
5
5
|
smart_load_path
|
6
6
|
end
|
7
7
|
|
8
|
+
require 'transparent_nil' unless defined? TransparentNil
|
8
9
|
require 'kyanite/unit_test'
|
9
10
|
require 'kyanite/set'
|
10
11
|
|
data/test/test_tree.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kyanite
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,8 +9,24 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-10-
|
12
|
+
date: 2012-10-15 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: transparent_nil
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 0.1.3
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 0.1.3
|
14
30
|
- !ruby/object:Gem::Dependency
|
15
31
|
name: activesupport
|
16
32
|
requirement: !ruby/object:Gem::Requirement
|
@@ -102,6 +118,7 @@ extra_rdoc_files:
|
|
102
118
|
- Manifest.txt
|
103
119
|
- README.txt
|
104
120
|
files:
|
121
|
+
- console.rb
|
105
122
|
- Div
|
106
123
|
- History.txt
|
107
124
|
- License.txt
|
@@ -128,14 +145,12 @@ files:
|
|
128
145
|
- lib/kyanite/general/callerutils.rb
|
129
146
|
- lib/kyanite/general/classutils.rb
|
130
147
|
- lib/kyanite/general/kernel.rb
|
131
|
-
- lib/kyanite/general/nil.rb
|
132
148
|
- lib/kyanite/general/object.rb
|
133
149
|
- lib/kyanite/general/true_false.rb
|
134
150
|
- lib/kyanite/general/undoable.rb
|
135
151
|
- lib/kyanite/hash.rb
|
136
152
|
- lib/kyanite/hoe.rb
|
137
153
|
- lib/kyanite/matrix2.rb
|
138
|
-
- lib/kyanite/nil.rb
|
139
154
|
- lib/kyanite/numeric.rb
|
140
155
|
- lib/kyanite/numeric/float.rb
|
141
156
|
- lib/kyanite/numeric/integer.rb
|
@@ -167,7 +182,6 @@ files:
|
|
167
182
|
- lib/kyanite/tree.rb
|
168
183
|
- lib/kyanite/undoable.rb
|
169
184
|
- lib/kyanite/unit_test.rb
|
170
|
-
- script/console.rb
|
171
185
|
- test/_start_all.rb
|
172
186
|
- test/array/test_array.rb
|
173
187
|
- test/array/test_matrix2.rb
|
@@ -176,7 +190,6 @@ files:
|
|
176
190
|
- test/enumerable/test_enumerable_strings.rb
|
177
191
|
- test/enumerable/test_structure.rb
|
178
192
|
- test/general/test_classutils.rb
|
179
|
-
- test/general/test_nil.rb
|
180
193
|
- test/general/test_object.rb
|
181
194
|
- test/general/test_true_false.rb
|
182
195
|
- test/numeric/test_numeric_integer.rb
|
@@ -228,7 +241,6 @@ test_files:
|
|
228
241
|
- test/enumerable/test_enumerable_strings.rb
|
229
242
|
- test/enumerable/test_structure.rb
|
230
243
|
- test/general/test_classutils.rb
|
231
|
-
- test/general/test_nil.rb
|
232
244
|
- test/general/test_object.rb
|
233
245
|
- test/general/test_true_false.rb
|
234
246
|
- test/numeric/test_numeric_integer.rb
|
data/lib/kyanite/general/nil.rb
DELETED
@@ -1,88 +0,0 @@
|
|
1
|
-
# ruby encoding: utf-8
|
2
|
-
# [ | *Kyanite* | Object | Array | Set | Enumerable | Hash | ] | Kyanite | TrueClass | FalseClass | *NilClass* | Div |
|
3
|
-
#
|
4
|
-
# ---
|
5
|
-
#
|
6
|
-
#
|
7
|
-
# == *Transparent* *Nil*
|
8
|
-
# Nil nervt oft. Zwar ist es ein schöner Fehlerindikator
|
9
|
-
# (meist läuft irgendwas schief wenn man es unerwartet mit nil zu tun hat)
|
10
|
-
# aber man verunstaltet seinen Quellcode schnell mit Fallunterscheidungen, die den nil-Fall behandeln.
|
11
|
-
#
|
12
|
-
# In Kyanite werden daher zahlreiche Methoden für nil definiert.
|
13
|
-
# Nil verhält sich damit wie alle anderen Objekte auch.
|
14
|
-
# Man kann immer noch nach Nil fragen, wenn man es möchte, aber man muss es nicht mehr tun!
|
15
|
-
#
|
16
|
-
class NilClass
|
17
|
-
|
18
|
-
# Rückgabe: Array mit dem einen Element
|
19
|
-
def <<(element); [element]; end
|
20
|
-
|
21
|
-
# Rückgabe: true
|
22
|
-
def empty?; true; end
|
23
|
-
|
24
|
-
# Rückgabe: 0
|
25
|
-
def length; 0; end
|
26
|
-
|
27
|
-
# Rückgabe: 0
|
28
|
-
def size; 0; end
|
29
|
-
|
30
|
-
# Rückgabe: 0
|
31
|
-
def count(*a); 0; end
|
32
|
-
|
33
|
-
# Rückgabe: leeres Array
|
34
|
-
def split(*a); []; end
|
35
|
-
|
36
|
-
# Rückgabe: false
|
37
|
-
def =~(other); false; end
|
38
|
-
|
39
|
-
# Rückgabe: false
|
40
|
-
# redundante Definition!
|
41
|
-
def include?(*a); false; end
|
42
|
-
|
43
|
-
|
44
|
-
def -(other); nil; end
|
45
|
-
def +(other); nil; end
|
46
|
-
def <(*a); nil; end
|
47
|
-
def <=>(*a); nil; end
|
48
|
-
def >(*a); nil; end
|
49
|
-
def abs; nil; end
|
50
|
-
def chop; nil; end
|
51
|
-
def clear; nil; end
|
52
|
-
def code; nil; end
|
53
|
-
def collect(&block); nil; end
|
54
|
-
def compact; nil; end
|
55
|
-
def downcase; nil; end
|
56
|
-
def dup; nil; end
|
57
|
-
def each(*a); nil; end
|
58
|
-
def grep(*a); nil; end
|
59
|
-
def gsub!(*a); nil; end
|
60
|
-
def gsub(*a); nil; end
|
61
|
-
def join; nil; end
|
62
|
-
def keys; nil; end
|
63
|
-
def pop(*a); nil; end
|
64
|
-
def push(*a); nil; end
|
65
|
-
#def split(*a); nil; end
|
66
|
-
def strip!(*a); nil; end
|
67
|
-
def strip(*a); nil; end
|
68
|
-
def sub(*a); nil; end
|
69
|
-
def to_i; nil; end
|
70
|
-
def to_integer; nil; end
|
71
|
-
def to_nil; nil; end
|
72
|
-
def to_sym; nil; end
|
73
|
-
def uniq!; nil; end
|
74
|
-
def uniq; nil; end
|
75
|
-
def [](*a); nil; end
|
76
|
-
def []=(*a); nil; end
|
77
|
-
|
78
|
-
|
79
|
-
end
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
data/lib/kyanite/nil.rb
DELETED
data/script/console.rb
DELETED
@@ -1,10 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
# File: script/console
|
3
|
-
irb = RUBY_PLATFORM =~ /(:?mswin|mingw)/ ? 'irb.bat' : 'irb'
|
4
|
-
|
5
|
-
libs = " -r irb/completion"
|
6
|
-
# Perhaps use a console_lib to store any extra methods I may want available in the cosole
|
7
|
-
# libs << " -r #{File.dirname(__FILE__) + '/../lib/console_lib/console_logger.rb'}"
|
8
|
-
libs << " -r #{File.dirname(__FILE__) + '/../lib/kyanite.rb'}"
|
9
|
-
puts "Welcome to Kyanite gem"
|
10
|
-
exec "#{irb} #{libs} --simple-prompt --noreadline"
|
data/test/general/test_nil.rb
DELETED
@@ -1,48 +0,0 @@
|
|
1
|
-
# ruby encoding: utf-8
|
2
|
-
# ü
|
3
|
-
if $0 == __FILE__
|
4
|
-
require File.join(File.dirname(__FILE__), '..', '..', 'smart_load_path.rb' )
|
5
|
-
smart_load_path
|
6
|
-
end
|
7
|
-
|
8
|
-
require 'kyanite/unit_test'
|
9
|
-
require 'kyanite/general/nil'
|
10
|
-
|
11
|
-
# Tests for NilClass
|
12
|
-
class TestKyaniteNil < UnitTest
|
13
|
-
|
14
|
-
def test_nil_patches
|
15
|
-
assert nil.empty?
|
16
|
-
|
17
|
-
assert ! nil.include?('g')
|
18
|
-
assert ! nil.include?(nil)
|
19
|
-
|
20
|
-
assert_nil nil.to_nil
|
21
|
-
assert_equal 0, nil.size
|
22
|
-
assert_equal 0, nil.length
|
23
|
-
|
24
|
-
assert_equal nil, nil + 42
|
25
|
-
assert_equal nil, nil + '42'
|
26
|
-
assert_equal '', nil.to_s
|
27
|
-
|
28
|
-
assert_nil nil[1]
|
29
|
-
assert_nil nil[1,2]
|
30
|
-
assert_nil nil[1][2]
|
31
|
-
assert_nil nil[1][2,3][4]
|
32
|
-
assert_nil nil[nil]
|
33
|
-
assert_nil nil[nil,nil]
|
34
|
-
assert_nil nil[nil][nil]
|
35
|
-
|
36
|
-
assert_equal 42, nil[1] = 42
|
37
|
-
assert_equal 42, nil[1,2] = 42
|
38
|
-
assert_equal 42, nil[1][2] = 42
|
39
|
-
assert_equal 42, nil[1][2,3][4] = 42
|
40
|
-
assert_equal 42, nil[nil] = 42
|
41
|
-
assert_equal 42, nil[nil,nil] = 42
|
42
|
-
assert_equal 42, nil[nil][nil] = 42
|
43
|
-
|
44
|
-
end # test_nil_patches
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
end # class
|