zucker 1 → 2
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/CHANGELOG +14 -0
- data/Rakefile +14 -4
- data/lib/zucker.rb +0 -4
- data/lib/zucker/2/D.rb +19 -0
- data/lib/zucker/2/aliases.rb +28 -0
- data/lib/zucker/2/all.rb +6 -0
- data/lib/zucker/2/array.rb +17 -0
- data/lib/zucker/2/array2proc.rb +16 -0
- data/lib/zucker/2/binding.rb +25 -0
- data/lib/zucker/2/blank.rb +26 -0
- data/lib/zucker/2/class2proc.rb +10 -0
- data/lib/zucker/2/debug.rb +4 -0
- data/lib/zucker/2/default.rb +25 -0
- data/lib/zucker/2/desc/D.yaml +23 -0
- data/lib/zucker/2/desc/aliases.yaml +16 -0
- data/lib/zucker/2/desc/array.yaml +14 -0
- data/lib/zucker/2/desc/array2proc.yaml +17 -0
- data/lib/zucker/2/desc/binding.yaml +10 -0
- data/lib/zucker/2/desc/blank.yaml +10 -0
- data/lib/zucker/2/desc/class2proc.yaml +12 -0
- data/lib/zucker/2/desc/egonil.yaml +17 -0
- data/lib/zucker/2/desc/enumerable.yaml +11 -0
- data/lib/zucker/2/desc/hash.yaml +14 -0
- data/lib/zucker/2/desc/hash2proc.yaml +11 -0
- data/lib/zucker/2/desc/info.yaml +12 -0
- data/lib/zucker/2/desc/iterate.yaml +17 -0
- data/lib/zucker/2/desc/ivars.yaml +20 -0
- data/lib/zucker/2/desc/kernel.yaml +13 -0
- data/lib/zucker/2/desc/mcopy.yaml +12 -0
- data/lib/zucker/2/desc/mm.yaml +12 -0
- data/lib/zucker/2/desc/regexp2proc.yaml +13 -0
- data/lib/zucker/2/desc/sandbox.yaml +19 -0
- data/lib/zucker/2/desc/square_brackets_for.yaml +23 -0
- data/lib/zucker/2/desc/string.yaml +13 -0
- data/lib/zucker/2/desc/unary.yaml +15 -0
- data/lib/zucker/2/desc/union.yaml +11 -0
- data/lib/zucker/2/doc/zucker_doc.html +1494 -0
- data/lib/zucker/2/doc/zucker_doc.rb +498 -0
- data/lib/zucker/2/egonil.rb +14 -0
- data/lib/zucker/2/enumerable.rb +12 -0
- data/lib/zucker/2/hash.rb +19 -0
- data/lib/zucker/2/hash2proc.rb +14 -0
- data/lib/zucker/2/info.rb +164 -0
- data/lib/zucker/2/iterate.rb +23 -0
- data/lib/zucker/2/ivars.rb +26 -0
- data/lib/zucker/2/kernel.rb +18 -0
- data/lib/zucker/2/mcopy.rb +9 -0
- data/lib/zucker/2/mm.rb +31 -0
- data/lib/zucker/2/regexp2proc.rb +10 -0
- data/lib/zucker/2/sandbox.rb +19 -0
- data/lib/zucker/2/spec/D_spec.rb +35 -0
- data/lib/zucker/2/spec/aliases_spec.rb +13 -0
- data/lib/zucker/2/spec/array2proc_spec.rb +12 -0
- data/lib/zucker/2/spec/array_spec.rb +23 -0
- data/lib/zucker/2/spec/binding_spec.rb +8 -0
- data/lib/zucker/2/spec/blank_spec.rb +20 -0
- data/lib/zucker/2/spec/class2proc_spec.rb +9 -0
- data/lib/zucker/2/spec/egonil_spec.rb +30 -0
- data/lib/zucker/2/spec/enumerable_spec.rb +8 -0
- data/lib/zucker/2/spec/hash2proc_spec.rb +12 -0
- data/lib/zucker/2/spec/hash_spec.rb +17 -0
- data/lib/zucker/2/spec/info_spec.rb +8 -0
- data/lib/zucker/2/spec/iterate_spec.rb +54 -0
- data/lib/zucker/2/spec/ivars_spec.rb +20 -0
- data/lib/zucker/2/spec/kernel_spec.rb +28 -0
- data/lib/zucker/2/spec/mcopy_spec.rb +13 -0
- data/lib/zucker/2/spec/mm_spec.rb +8 -0
- data/lib/zucker/2/spec/regexp2proc_spec.rb +9 -0
- data/lib/zucker/2/spec/sandbox_spec.rb +26 -0
- data/lib/zucker/2/spec/spec_helper.rb +18 -0
- data/lib/zucker/2/spec/square_brackets_for_spec.rb +59 -0
- data/lib/zucker/2/spec/string_spec.rb +29 -0
- data/lib/zucker/2/spec/unary_spec.rb +26 -0
- data/lib/zucker/2/spec/union_spec.rb +15 -0
- data/lib/zucker/2/square_brackets_for.rb +20 -0
- data/lib/zucker/2/string.rb +25 -0
- data/lib/zucker/2/unary.rb +22 -0
- data/lib/zucker/2/union.rb +14 -0
- data/lib/zucker/all.rb +2 -2
- data/lib/zucker/array2proc.rb +7 -1
- data/lib/zucker/debug.rb +3 -3
- data/lib/zucker/default.rb +1 -1
- data/lib/zucker/desc/D.yaml +1 -1
- data/lib/zucker/desc/array.yaml +1 -1
- data/lib/zucker/desc/array2proc.yaml +5 -1
- data/lib/zucker/desc/binding.yaml +2 -2
- data/lib/zucker/desc/blank.yaml +1 -3
- data/lib/zucker/desc/egonil.yaml +1 -1
- data/lib/zucker/desc/enumerable.yaml +1 -1
- data/lib/zucker/desc/hash.yaml +4 -2
- data/lib/zucker/desc/info.yaml +12 -0
- data/lib/zucker/desc/kernel.yaml +2 -2
- data/lib/zucker/desc/mm.yaml +3 -3
- data/lib/zucker/desc/regexp2proc.yaml +1 -1
- data/lib/zucker/desc/sandbox.yaml +6 -1
- data/lib/zucker/desc/string.yaml +1 -1
- data/lib/zucker/desc/unary.yaml +2 -2
- data/lib/zucker/desc/union.yaml +1 -1
- data/lib/zucker/doc/zucker_doc.html +441 -233
- data/lib/zucker/doc/zucker_doc.rb +32 -27
- data/lib/zucker/hash.rb +3 -3
- data/lib/zucker/info.rb +164 -0
- data/lib/zucker/ivars.rb +1 -1
- data/lib/zucker/kernel.rb +2 -4
- data/lib/zucker/sandbox.rb +7 -3
- data/lib/zucker/spec/D_spec.rb +15 -7
- data/lib/zucker/spec/aliases_spec.rb +3 -24
- data/lib/zucker/spec/array2proc_spec.rb +5 -1
- data/lib/zucker/spec/array_spec.rb +1 -1
- data/lib/zucker/spec/binding_spec.rb +4 -2
- data/lib/zucker/spec/blank_spec.rb +1 -1
- data/lib/zucker/spec/class2proc_spec.rb +1 -1
- data/lib/zucker/spec/egonil_spec.rb +1 -1
- data/lib/zucker/spec/enumerable_spec.rb +1 -1
- data/lib/zucker/spec/hash2proc_spec.rb +1 -1
- data/lib/zucker/spec/hash_spec.rb +10 -3
- data/lib/zucker/spec/info_spec.rb +8 -0
- data/lib/zucker/spec/iterate_spec.rb +1 -1
- data/lib/zucker/spec/ivars_spec.rb +1 -1
- data/lib/zucker/spec/kernel_spec.rb +1 -7
- data/lib/zucker/spec/mcopy_spec.rb +1 -1
- data/lib/zucker/spec/mm_spec.rb +4 -2
- data/lib/zucker/spec/regexp2proc_spec.rb +1 -1
- data/lib/zucker/spec/sandbox_spec.rb +22 -3
- data/lib/zucker/spec/spec_helper.rb +18 -0
- data/lib/zucker/spec/square_brackets_for_spec.rb +1 -1
- data/lib/zucker/spec/string_spec.rb +7 -7
- data/lib/zucker/spec/unary_spec.rb +1 -1
- data/lib/zucker/spec/union_spec.rb +8 -6
- metadata +207 -131
- data/lib/zucker/doc/meta.yaml +0 -4
@@ -1,8 +1,12 @@
|
|
1
1
|
# Ruby 1.9, encoding: utf-8
|
2
|
+
# creates the documentation for Zucker
|
3
|
+
|
2
4
|
require 'yaml'
|
3
5
|
require 'coderay'
|
4
6
|
|
5
7
|
class ZuckerDoc
|
8
|
+
PACKAGES = %w|default debug|
|
9
|
+
ORDER = %w|summary why methods info spec source versions|
|
6
10
|
DESCRIPTIONS = {
|
7
11
|
'summary' => 'Summary',
|
8
12
|
'why' => 'Why?',
|
@@ -13,15 +17,15 @@ class ZuckerDoc
|
|
13
17
|
'versions' => 'Compatibility',
|
14
18
|
'authors' => 'Authors',
|
15
19
|
}
|
16
|
-
ORDER = %w|summary why methods info spec source versions|
|
17
20
|
|
18
21
|
# template vars
|
19
|
-
@version =
|
22
|
+
@version = 2
|
20
23
|
|
21
24
|
class << self
|
22
|
-
def generate
|
25
|
+
def generate(path = '../')
|
26
|
+
@path = path
|
23
27
|
|
24
|
-
cubes = Dir['
|
28
|
+
cubes = Dir[ File.join(path, 'desc', '*') ].inject({}) do |res, cube_file; a|
|
25
29
|
a = YAML.load_file cube_file
|
26
30
|
if a.instance_of? Hash
|
27
31
|
res.merge a
|
@@ -30,13 +34,12 @@ class ZuckerDoc
|
|
30
34
|
end
|
31
35
|
end
|
32
36
|
|
33
|
-
|
37
|
+
output_path = File.join(path, 'doc', 'zucker_doc.html')
|
34
38
|
|
35
|
-
output = 'zucker_doc.html'
|
36
39
|
result = DATA.read
|
37
40
|
|
38
|
-
cubes_html =
|
39
|
-
|
41
|
+
cubes_html = PACKAGES.map{ |pkg_name|
|
42
|
+
package pkg_name, cubes.select{|name, hash| hash['package'] == pkg_name }
|
40
43
|
}.join
|
41
44
|
|
42
45
|
# insert cubes
|
@@ -47,16 +50,28 @@ class ZuckerDoc
|
|
47
50
|
result.gsub! /⇧(.+?)⇧/, '<code>\1</code>'
|
48
51
|
# strong
|
49
52
|
result.gsub! /●(.+?)●/, '<strong>\1</strong>'
|
50
|
-
# hyper
|
53
|
+
# hyper→links
|
51
54
|
result.gsub! /→(.+?)→(.+?)→/, '<a href="\2">\1</a>'
|
52
55
|
|
53
|
-
File.open
|
56
|
+
File.open output_path, 'w' do |file|
|
54
57
|
file.puts result
|
55
58
|
end
|
56
59
|
end
|
57
60
|
|
58
61
|
protected
|
59
62
|
|
63
|
+
def package(name, cubes)
|
64
|
+
cube_html = cubes.sort.map{ |name, hash|
|
65
|
+
cube name, hash
|
66
|
+
}.join
|
67
|
+
|
68
|
+
%{
|
69
|
+
<h2 title="require 'zucker/#{name}'">Cubes[#{name}]</h2>
|
70
|
+
<div class="cubes">
|
71
|
+
#{cube_html}
|
72
|
+
</div> }
|
73
|
+
end
|
74
|
+
|
60
75
|
def cube(name, hash)
|
61
76
|
@cube_name = name
|
62
77
|
%{ <h3 title="require 'zucker/#{name}'">#{ name }</h3>
|
@@ -110,17 +125,17 @@ class ZuckerDoc
|
|
110
125
|
end
|
111
126
|
|
112
127
|
def spec(s)
|
113
|
-
source_helper(:spec, '
|
128
|
+
source_helper(:spec, File.join( @path, 'spec/' ), '_spec')
|
114
129
|
end
|
115
130
|
|
116
131
|
def source(s)
|
117
|
-
source_helper(:source,
|
132
|
+
source_helper(:source, @path)
|
118
133
|
end
|
119
134
|
|
120
135
|
def source_helper(kind, file_prefix, suffix='')
|
121
136
|
%{ <span id="show_#{@cube_name}_#{kind}">(<a href="javascript:show('#{@cube_name}_#{kind}')">show</a>)</span>
|
122
137
|
<pre class="source" id="#{@cube_name}_#{kind}">#{
|
123
|
-
get_source_file( file_prefix
|
138
|
+
get_source_file( File.join file_prefix, ( @cube_name + suffix + '.rb' ) )
|
124
139
|
}</pre> }
|
125
140
|
end
|
126
141
|
|
@@ -149,7 +164,7 @@ class ZuckerDoc
|
|
149
164
|
end
|
150
165
|
end
|
151
166
|
|
152
|
-
ZuckerDoc.generate
|
167
|
+
ZuckerDoc.generate *ARGV
|
153
168
|
|
154
169
|
__END__
|
155
170
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
@@ -288,19 +303,12 @@ code, pre{
|
|
288
303
|
|
289
304
|
.source{
|
290
305
|
display:none;
|
291
|
-
border:1px solid #005;
|
292
|
-
# background:#111;
|
293
306
|
width:98%;
|
294
|
-
|
295
|
-
# background-color: #232323;
|
296
|
-
# border: 1px solid black;
|
297
|
-
# font-family: 'Courier New', 'Terminal', monospace;
|
298
|
-
# color: #E6E0DB;
|
299
307
|
padding: 3px 5px;
|
300
|
-
# margin-right:1em;
|
301
308
|
overflow: auto;
|
302
309
|
font-size: 12px;
|
303
310
|
background-color: #f8f8f8;
|
311
|
+
border:1px solid #005;
|
304
312
|
border: 1px solid silver;
|
305
313
|
font-family: 'Courier New', 'Terminal', monospace;
|
306
314
|
color: #000;
|
@@ -454,7 +462,7 @@ table.source td { padding: 2px 4px; vertical-align: top; }
|
|
454
462
|
|
455
463
|
<h1>Ruby Zucker ..version..</h1>
|
456
464
|
<h2>What is it?</h2>
|
457
|
-
<p class="text">Zucker is the German word for sugar (<a href="http://www.forvo.com/word/zucker/">pronunciation</a>).
|
465
|
+
<p class="text">Zucker is the German word for sugar (<a href="http://www.forvo.com/word/zucker/">pronunciation</a>). It adds syntactical sugar in the form of independent, small scripts that make Ruby even more sweet. Read <a href="http://rbjl.net/32-introducing-ruby-zucker-a-new-syntactical-sugar-gem">this blog post</a> for a little introduction.</p>
|
458
466
|
|
459
467
|
<h2>Install</h2>
|
460
468
|
<p class="text">
|
@@ -475,10 +483,7 @@ table.source td { padding: 2px 4px; vertical-align: top; }
|
|
475
483
|
<p class="text">You can also lock your require to a specific version of Zucker by simply putting the version before the cube name in this way:
|
476
484
|
<code>require 'zucker/1/egonil'</code>. Future releases of the gem will include all previous (main) versions, so the behaviour of these directly required cubes will not change (except for critical bugs).</p>
|
477
485
|
|
478
|
-
|
479
|
-
<div class="cubes">
|
480
|
-
....
|
481
|
-
</div>
|
486
|
+
....
|
482
487
|
<br/>
|
483
488
|
</div>
|
484
489
|
<div id="foot">
|
data/lib/zucker/hash.rb
CHANGED
@@ -1,16 +1,16 @@
|
|
1
1
|
class Hash
|
2
2
|
def self.zip(keys,values)
|
3
|
-
Hash[ *
|
3
|
+
Hash[ *keys.zip( values ).flatten ]
|
4
4
|
end
|
5
5
|
|
6
6
|
def <<(other)
|
7
7
|
case
|
8
8
|
when other.is_a?(Hash)
|
9
9
|
merge! other
|
10
|
-
when other.respond_to?(:to_splat)
|
10
|
+
when other.is_a?(Enumerable) || other.respond_to?(:to_splat)
|
11
11
|
merge! Hash[*other]
|
12
12
|
else
|
13
|
-
raise TypeError, 'can only append other Hashs and Enumerables'
|
13
|
+
raise TypeError, 'can only append other Hashs and Enumerables (or Classes that implement to_splat)'
|
14
14
|
end
|
15
15
|
end
|
16
16
|
end
|
data/lib/zucker/info.rb
ADDED
@@ -0,0 +1,164 @@
|
|
1
|
+
module Info
|
2
|
+
class << Info
|
3
|
+
# hash like access
|
4
|
+
def [](what)
|
5
|
+
send what
|
6
|
+
end
|
7
|
+
|
8
|
+
# TODO: maybe add a descriptions method
|
9
|
+
end
|
10
|
+
|
11
|
+
module_function
|
12
|
+
|
13
|
+
# current script file
|
14
|
+
def current_file
|
15
|
+
__FILE__
|
16
|
+
end
|
17
|
+
|
18
|
+
def current_file_directory
|
19
|
+
File.dirname(__FILE__)
|
20
|
+
end
|
21
|
+
|
22
|
+
# input
|
23
|
+
def last_input_file
|
24
|
+
$FILENAME
|
25
|
+
end
|
26
|
+
|
27
|
+
def last_input_line_number
|
28
|
+
$.
|
29
|
+
end
|
30
|
+
|
31
|
+
def last_input
|
32
|
+
$_
|
33
|
+
end
|
34
|
+
|
35
|
+
# program
|
36
|
+
def program_name
|
37
|
+
$0
|
38
|
+
end
|
39
|
+
|
40
|
+
def program_arguments
|
41
|
+
$:
|
42
|
+
end
|
43
|
+
|
44
|
+
def loaded_programs
|
45
|
+
$"
|
46
|
+
end
|
47
|
+
|
48
|
+
def program_data
|
49
|
+
::DATA
|
50
|
+
end
|
51
|
+
|
52
|
+
def child_program_status
|
53
|
+
$CHILD_STATUS
|
54
|
+
end
|
55
|
+
|
56
|
+
# system info
|
57
|
+
def environment
|
58
|
+
::ENV
|
59
|
+
end
|
60
|
+
alias env environment
|
61
|
+
|
62
|
+
def working_directory
|
63
|
+
Dir.pwd
|
64
|
+
end
|
65
|
+
|
66
|
+
def platform
|
67
|
+
::RUBY_PLATFORM
|
68
|
+
end
|
69
|
+
|
70
|
+
def process_id
|
71
|
+
$$
|
72
|
+
end
|
73
|
+
|
74
|
+
def load_path
|
75
|
+
$:
|
76
|
+
end
|
77
|
+
|
78
|
+
# current
|
79
|
+
def current_line
|
80
|
+
__LINE__
|
81
|
+
end
|
82
|
+
|
83
|
+
def current_method # 1.9
|
84
|
+
__method__
|
85
|
+
end
|
86
|
+
|
87
|
+
def current_callstack
|
88
|
+
caller
|
89
|
+
end
|
90
|
+
|
91
|
+
# dealing with strings
|
92
|
+
def gets_separator
|
93
|
+
$/
|
94
|
+
end
|
95
|
+
|
96
|
+
def join_separator
|
97
|
+
$,
|
98
|
+
end
|
99
|
+
|
100
|
+
def print_separator
|
101
|
+
$,
|
102
|
+
end
|
103
|
+
|
104
|
+
def split_separator
|
105
|
+
$;
|
106
|
+
end
|
107
|
+
|
108
|
+
# misc
|
109
|
+
def security_level
|
110
|
+
$SAFE
|
111
|
+
end
|
112
|
+
|
113
|
+
def warnings_activated?
|
114
|
+
$VERBOSE
|
115
|
+
end
|
116
|
+
|
117
|
+
def debug_activated?
|
118
|
+
$DEBUG
|
119
|
+
end
|
120
|
+
|
121
|
+
def last_exception
|
122
|
+
$!
|
123
|
+
end
|
124
|
+
|
125
|
+
# defined objects
|
126
|
+
def global_variables
|
127
|
+
global_variables
|
128
|
+
end
|
129
|
+
|
130
|
+
def global_constants
|
131
|
+
Object.constants
|
132
|
+
end
|
133
|
+
|
134
|
+
# encoding (1.9)
|
135
|
+
def source_encoding
|
136
|
+
__ENCODING__
|
137
|
+
end
|
138
|
+
|
139
|
+
def external_encoding
|
140
|
+
Encoding.default_external
|
141
|
+
end
|
142
|
+
|
143
|
+
def internal_encoding
|
144
|
+
Encoding.default_internal
|
145
|
+
end
|
146
|
+
|
147
|
+
# ruby version info
|
148
|
+
def ruby_version
|
149
|
+
::RUBY_VERSION
|
150
|
+
end
|
151
|
+
|
152
|
+
def ruby_patchlevel
|
153
|
+
::RUBY_PATCHLEVEL
|
154
|
+
end
|
155
|
+
|
156
|
+
def ruby_description
|
157
|
+
::RUBY_DESCRIPTION
|
158
|
+
end
|
159
|
+
|
160
|
+
def ruby_release_date
|
161
|
+
::RUBY_RELEASE_DATE
|
162
|
+
end
|
163
|
+
end
|
164
|
+
|
data/lib/zucker/ivars.rb
CHANGED
data/lib/zucker/kernel.rb
CHANGED
@@ -6,10 +6,6 @@ def deactivate_warnings!
|
|
6
6
|
$VERBOSE = false
|
7
7
|
end
|
8
8
|
|
9
|
-
def warnings_activated?
|
10
|
-
$VERBOSE
|
11
|
-
end
|
12
|
-
|
13
9
|
def library?
|
14
10
|
__FILE__ != $PROGRAM_NAME
|
15
11
|
end
|
@@ -18,3 +14,5 @@ def ignore_sigint! # ctrl+c
|
|
18
14
|
Signal.trap *%w|SIGINT IGNORE|
|
19
15
|
end
|
20
16
|
|
17
|
+
# J-_-L
|
18
|
+
|
data/lib/zucker/sandbox.rb
CHANGED
@@ -1,11 +1,15 @@
|
|
1
|
-
def sandbox(
|
1
|
+
def sandbox(rescueblock_or_default=nil)
|
2
2
|
Thread.start do
|
3
3
|
$SAFE = 4
|
4
4
|
yield
|
5
5
|
end.value
|
6
6
|
rescue SecurityError => e
|
7
|
-
if
|
8
|
-
|
7
|
+
if !rescueblock_or_default.nil?
|
8
|
+
if rescueblock_or_default.is_a? Proc
|
9
|
+
rescueblock_or_default.call e
|
10
|
+
else
|
11
|
+
rescueblock_or_default
|
12
|
+
end
|
9
13
|
else
|
10
14
|
raise e
|
11
15
|
end
|
data/lib/zucker/spec/D_spec.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require 'D'
|
1
|
+
require 'zucker/D'
|
2
2
|
|
3
3
|
describe 'Object#D' do
|
4
4
|
|
@@ -10,18 +10,26 @@ describe 'Object#D' do
|
|
10
10
|
a.each{ |e|
|
11
11
|
(e.D).should == e
|
12
12
|
}
|
13
|
+
|
14
|
+
a.each{ |e|
|
15
|
+
(e.D{|value| "This is a: #{value}"}).should == e
|
16
|
+
}
|
13
17
|
end
|
14
18
|
|
15
19
|
it "should puts .inspect if no block is given (and not change the object's value)" do
|
16
|
-
|
17
|
-
|
18
|
-
|
20
|
+
capture_stdout do
|
21
|
+
a[0].D
|
22
|
+
a[1].D
|
23
|
+
a[6].D
|
24
|
+
end.should == %{1\n"1"\ntrue\n}
|
19
25
|
end
|
20
26
|
|
21
27
|
it "should puts the block if it is given (and not change the object's value)" do
|
22
|
-
|
23
|
-
|
24
|
-
|
28
|
+
capture_stdout do
|
29
|
+
a[0].D{|value| "This is a: #{value}"}
|
30
|
+
a[1].D{|value| "This is a: #{value}"}
|
31
|
+
a[6].D{|value| "This is a: #{value}"}
|
32
|
+
end.should == %{This is a: 1\nThis is a: 1\nThis is a: true\n}
|
25
33
|
end
|
26
34
|
end
|
27
35
|
|
@@ -1,29 +1,8 @@
|
|
1
|
-
require 'aliases'
|
1
|
+
require 'zucker/aliases'
|
2
2
|
|
3
3
|
describe '(aliases)' do
|
4
|
-
it 'should create these aliases
|
5
|
-
|
6
|
-
|
7
|
-
# module Enumerable
|
8
|
-
# alias with zip
|
9
|
-
# alias % zip
|
10
|
-
# end
|
11
|
-
|
12
|
-
# class Array
|
13
|
-
# alias ** product
|
14
|
-
# end
|
15
|
-
|
16
|
-
# class Hash
|
17
|
-
# alias + merge
|
18
|
-
# end
|
19
|
-
|
20
|
-
# class Binding
|
21
|
-
# #alias [] eval
|
22
|
-
# def [](expr)
|
23
|
-
# self.eval "#{expr}"
|
24
|
-
# end
|
25
|
-
# end
|
26
|
-
|
4
|
+
it 'should create these aliases' do
|
5
|
+
# see aliases.rb for aliase list
|
27
6
|
end
|
28
7
|
|
29
8
|
it 'should define these constants' do
|