named_parameter 1.0.0 → 1.0.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.
- data/.gitignore +4 -0
- data/Gemfile +3 -10
- data/README.md +1 -1
- data/Rakefile +2 -27
- data/lib/named_parameter/errors/on_irb_exception.rb +5 -0
- data/lib/named_parameter/errors.rb +1 -0
- data/lib/named_parameter/named_method_transmuter.rb +2 -5
- data/lib/named_parameter/parameters_adapter.rb +86 -0
- data/lib/named_parameter/version.rb +3 -0
- data/lib/named_parameter.rb +2 -0
- data/named_parameter.gemspec +13 -66
- data/spec/bug_fixing/parameters_order_spec.rb +253 -0
- data/spec/unit/parameters_adapter_spec.rb +32 -0
- metadata +32 -34
data/.gitignore
ADDED
data/Gemfile
CHANGED
@@ -1,11 +1,4 @@
|
|
1
|
-
source
|
2
|
-
# Add dependencies required to use your gem here.
|
3
|
-
# Example:
|
4
|
-
# gem "activesupport", ">= 2.3.5"
|
1
|
+
source 'https://rubygems.org'
|
5
2
|
|
6
|
-
#
|
7
|
-
|
8
|
-
group :development do
|
9
|
-
gem "bundler", "~> 1.0.0"
|
10
|
-
gem "jeweler", "~> 1.6.0"
|
11
|
-
end
|
3
|
+
# Specify your gem's dependencies in named_parameter.gemspec
|
4
|
+
gemspec
|
data/README.md
CHANGED
data/Rakefile
CHANGED
@@ -1,27 +1,2 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
require 'rubygems'
|
4
|
-
require 'bundler'
|
5
|
-
begin
|
6
|
-
Bundler.setup(:default, :development)
|
7
|
-
rescue Bundler::BundlerError => e
|
8
|
-
$stderr.puts e.message
|
9
|
-
$stderr.puts "Run `bundle install` to install missing gems"
|
10
|
-
exit e.status_code
|
11
|
-
end
|
12
|
-
require 'rake'
|
13
|
-
|
14
|
-
require 'jeweler'
|
15
|
-
Jeweler::Tasks.new do |gem|
|
16
|
-
# gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
|
17
|
-
gem.version = "1.0.0"
|
18
|
-
gem.name = "named_parameter"
|
19
|
-
gem.homepage = "http://github.com/hugolnx/named_parameter"
|
20
|
-
gem.license = "MIT"
|
21
|
-
gem.summary = %Q{Allows named parameter in ruby}
|
22
|
-
gem.description = %Q{Allows named parameter in ruby}
|
23
|
-
gem.email = "hugolnx@gmail.com"
|
24
|
-
gem.authors = ["Hugo Roque (a.k.a HugoLnx)"]
|
25
|
-
# dependencies defined in Gemfile
|
26
|
-
end
|
27
|
-
Jeweler::RubygemsDotOrgTasks.new
|
1
|
+
#!/usr/bin/env rake
|
2
|
+
require "bundler/gem_tasks"
|
@@ -8,11 +8,8 @@ module NamedParameter
|
|
8
8
|
errors = named_method.errors_when_called_with options
|
9
9
|
raise ArgumentError,*errors.first.raise_args unless errors.empty?
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
parameter_name = parameter.last
|
14
|
-
original_parameters << options[parameter_name]
|
15
|
-
end
|
11
|
+
adapter = NamedParameter::ParametersAdapter.new(method)
|
12
|
+
original_parameters = adapter.hash_to_args(options)
|
16
13
|
|
17
14
|
original_named_method = method(named_method.name_of_original)
|
18
15
|
original_named_method.call(*original_parameters.compact)
|
@@ -0,0 +1,86 @@
|
|
1
|
+
module NamedParameter
|
2
|
+
class ParametersAdapter
|
3
|
+
NO_ARGUMENT = Object.new
|
4
|
+
|
5
|
+
attr_reader :method
|
6
|
+
|
7
|
+
def initialize(method)
|
8
|
+
@method = method
|
9
|
+
end
|
10
|
+
|
11
|
+
def hash_to_args(options)
|
12
|
+
original_parameters = []
|
13
|
+
@method.parameters.each_with_index do |parameter, i|
|
14
|
+
parameter_name = parameter.last
|
15
|
+
if options.has_key? parameter_name
|
16
|
+
original_parameters << options[parameter_name]
|
17
|
+
else
|
18
|
+
original_parameters << NO_ARGUMENT
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
arguments = fill_no_arguments(original_parameters)
|
23
|
+
|
24
|
+
return arguments
|
25
|
+
end
|
26
|
+
|
27
|
+
private
|
28
|
+
|
29
|
+
def fill_no_arguments(arguments)
|
30
|
+
while arguments.last.equal? NO_ARGUMENT
|
31
|
+
last_index = arguments.size - 1
|
32
|
+
arguments.delete_at last_index
|
33
|
+
end
|
34
|
+
|
35
|
+
if arguments.any?{|arg| arg.equal? NO_ARGUMENT}
|
36
|
+
filepath = @method.source_location[0]
|
37
|
+
linenumber = @method.source_location[1]
|
38
|
+
|
39
|
+
if filepath.downcase == "(irb)"
|
40
|
+
msg = NamedParameter::Errors::OnIrbException::MESSAGE
|
41
|
+
raise NamedParameter::Errors::OnIrbException, msg
|
42
|
+
end
|
43
|
+
|
44
|
+
content = File.read(filepath).split("\n")[(linenumber-1)..-1].join.strip
|
45
|
+
|
46
|
+
default_values = extract_default_values content
|
47
|
+
|
48
|
+
arguments.map!.with_index do |arg, i|
|
49
|
+
no_argument = arg.equal? NO_ARGUMENT
|
50
|
+
no_argument ? default_values[i] : arg
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
return arguments
|
55
|
+
end
|
56
|
+
|
57
|
+
def extract_default_values(file_fragment)
|
58
|
+
match = file_fragment.match /^[^\(]*\(([^\)]*)\)/
|
59
|
+
args_fragment = match[1]
|
60
|
+
args_fragments = extract_args_fragments args_fragment
|
61
|
+
default_values = args_fragments.map{|frag| eval(frag.gsub(/^[^=]*(=|$)/, ""))}
|
62
|
+
return default_values
|
63
|
+
end
|
64
|
+
|
65
|
+
def extract_args_fragments(fragment)
|
66
|
+
base_frags = fragment.split ","
|
67
|
+
frags = []
|
68
|
+
i = 0
|
69
|
+
while i < base_frags.size
|
70
|
+
frag = base_frags[i]
|
71
|
+
while inconsistent_fragment?(frag)
|
72
|
+
i += 1
|
73
|
+
frag += ",#{base_frags[i]}"
|
74
|
+
end
|
75
|
+
frags << frag
|
76
|
+
i += 1;
|
77
|
+
end
|
78
|
+
return frags
|
79
|
+
end
|
80
|
+
|
81
|
+
def inconsistent_fragment?(fragment)
|
82
|
+
return fragment.count("([{") != fragment.count(")]}") ||
|
83
|
+
fragment.count(%q{"'/}).odd?
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
data/lib/named_parameter.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'named_parameter/version'
|
1
2
|
require 'named_parameter/named_method'
|
2
3
|
require 'named_parameter/named_method_transmuter'
|
3
4
|
require 'named_parameter/errors'
|
@@ -5,3 +6,4 @@ require 'named_parameter/error'
|
|
5
6
|
require 'named_parameter/named_above'
|
6
7
|
require 'named_parameter/named_inline'
|
7
8
|
require 'named_parameter/named_parameter'
|
9
|
+
require 'named_parameter/parameters_adapter'
|
data/named_parameter.gemspec
CHANGED
@@ -1,70 +1,17 @@
|
|
1
|
-
# Generated by jeweler
|
2
|
-
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
-
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
1
|
# -*- encoding: utf-8 -*-
|
2
|
+
require File.expand_path('../lib/named_parameter/version', __FILE__)
|
5
3
|
|
6
|
-
Gem::Specification.new do |
|
7
|
-
|
8
|
-
|
4
|
+
Gem::Specification.new do |gem|
|
5
|
+
gem.authors = ["Hugo Roque"]
|
6
|
+
gem.email = ["hugolnx@gmail.com"]
|
7
|
+
gem.description = %q{Allows named parameter in ruby}
|
8
|
+
gem.summary = %Q{named_parameter-#{NamedParameter::VERSION}}
|
9
|
+
gem.homepage = "http://github.com/hugolnx/named_parameter/"
|
9
10
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
"README.md"
|
17
|
-
]
|
18
|
-
s.files = [
|
19
|
-
"Gemfile",
|
20
|
-
"README.md",
|
21
|
-
"Rakefile",
|
22
|
-
"lib/named_parameter.rb",
|
23
|
-
"lib/named_parameter/error.rb",
|
24
|
-
"lib/named_parameter/errors.rb",
|
25
|
-
"lib/named_parameter/errors/not_hash.rb",
|
26
|
-
"lib/named_parameter/errors/required_parameters.rb",
|
27
|
-
"lib/named_parameter/errors/undefined_parameters.rb",
|
28
|
-
"lib/named_parameter/named_above.rb",
|
29
|
-
"lib/named_parameter/named_inline.rb",
|
30
|
-
"lib/named_parameter/named_method.rb",
|
31
|
-
"lib/named_parameter/named_method_transmuter.rb",
|
32
|
-
"lib/named_parameter/named_parameter.rb",
|
33
|
-
"lib/named_parameter/parameters.rb",
|
34
|
-
"named_parameter.gemspec",
|
35
|
-
"spec/features/named_above/class_self_named_method_feature_spec.rb",
|
36
|
-
"spec/features/named_above/individual_named_method_feature_spec.rb",
|
37
|
-
"spec/features/named_above/singleton_named_method_feature_spec.rb",
|
38
|
-
"spec/features/named_inline/class_self_named_method_feature_spec.rb",
|
39
|
-
"spec/features/named_inline/individual_named_method_feature_spec.rb",
|
40
|
-
"spec/features/named_inline/singleton_named_method_feature_spec.rb",
|
41
|
-
"spec/spec_helper.rb",
|
42
|
-
"spec/unit/error_spec.rb",
|
43
|
-
"spec/unit/errors/not_hash_spec.rb",
|
44
|
-
"spec/unit/errors/required_parameters_spec.rb",
|
45
|
-
"spec/unit/errors/undefined_parameters_spec.rb",
|
46
|
-
"spec/unit/named_method_spec.rb",
|
47
|
-
"spec/unit/named_method_transmuter_spec.rb"
|
48
|
-
]
|
49
|
-
s.homepage = "http://github.com/hugolnx/named_parameter"
|
50
|
-
s.licenses = ["MIT"]
|
51
|
-
s.require_paths = ["lib"]
|
52
|
-
s.rubygems_version = "1.8.15"
|
53
|
-
s.summary = "Allows named parameter in ruby"
|
54
|
-
|
55
|
-
if s.respond_to? :specification_version then
|
56
|
-
s.specification_version = 3
|
57
|
-
|
58
|
-
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
59
|
-
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
|
60
|
-
s.add_development_dependency(%q<jeweler>, ["~> 1.6.0"])
|
61
|
-
else
|
62
|
-
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
63
|
-
s.add_dependency(%q<jeweler>, ["~> 1.6.0"])
|
64
|
-
end
|
65
|
-
else
|
66
|
-
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
67
|
-
s.add_dependency(%q<jeweler>, ["~> 1.6.0"])
|
68
|
-
end
|
11
|
+
gem.files = `git ls-files`.split($\)
|
12
|
+
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
13
|
+
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
14
|
+
gem.name = "named_parameter"
|
15
|
+
gem.require_paths = ["lib"]
|
16
|
+
gem.version = NamedParameter::VERSION
|
69
17
|
end
|
70
|
-
|
@@ -0,0 +1,253 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe "BugFix: should suport any kind use combination of optional parameters" do
|
4
|
+
describe 'Named Parameter' do
|
5
|
+
context %q{named def whatever(a="z",b="z",c="z",d="z",e="z",f="z")} do
|
6
|
+
specify "inline" do
|
7
|
+
class SomeClass
|
8
|
+
extend NamedParameter
|
9
|
+
|
10
|
+
named def whatever(a="z",b="z",c="z",d="z",e="z",f="z")
|
11
|
+
return [a,b,c,d,e,f]
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
obj = SomeClass.new
|
16
|
+
|
17
|
+
obj.whatever(
|
18
|
+
a: "a",
|
19
|
+
c: "c",
|
20
|
+
d: "d",
|
21
|
+
f: "f"
|
22
|
+
).should == %w{a z c d z f}
|
23
|
+
end
|
24
|
+
|
25
|
+
specify "above" do
|
26
|
+
class SomeClass
|
27
|
+
extend NamedParameter
|
28
|
+
|
29
|
+
named
|
30
|
+
def whatever(a="z",b="z",c="z",d="z",e="z",f="z")
|
31
|
+
return [a,b,c,d,e,f]
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
obj = SomeClass.new
|
36
|
+
|
37
|
+
obj.whatever(
|
38
|
+
a: "a",
|
39
|
+
c: "c",
|
40
|
+
d: "d",
|
41
|
+
f: "f"
|
42
|
+
).should == %w{a z c d z f}
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
context %q{named def whatever(a="z",b="z",c="z", \n d="z",e="z",f="z")} do
|
47
|
+
specify "inline" do
|
48
|
+
class SomeClass
|
49
|
+
extend NamedParameter
|
50
|
+
|
51
|
+
named def whatever(a="z",b="z",c="z",
|
52
|
+
d="z",e="z",f="z")
|
53
|
+
return [a,b,c,d,e,f]
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
obj = SomeClass.new
|
58
|
+
|
59
|
+
obj.whatever(
|
60
|
+
a: "a",
|
61
|
+
c: "c",
|
62
|
+
d: "d",
|
63
|
+
f: "f"
|
64
|
+
).should == %w{a z c d z f}
|
65
|
+
end
|
66
|
+
|
67
|
+
specify "above" do
|
68
|
+
class SomeClass
|
69
|
+
extend NamedParameter
|
70
|
+
|
71
|
+
named
|
72
|
+
def whatever(a="z",b="z",c="z",
|
73
|
+
d="z",e="z",f="z")
|
74
|
+
return [a,b,c,d,e,f]
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
78
|
+
obj = SomeClass.new
|
79
|
+
|
80
|
+
obj.whatever(
|
81
|
+
a: "a",
|
82
|
+
c: "c",
|
83
|
+
d: "d",
|
84
|
+
f: "f"
|
85
|
+
).should == %w{a z c d z f}
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
89
|
+
|
90
|
+
context %q{named def whatever(a="z",b="z",c="z", d="z",e,f)} do
|
91
|
+
specify "inline" do
|
92
|
+
class SomeClass
|
93
|
+
extend NamedParameter
|
94
|
+
|
95
|
+
named def whatever(a,b,c="z", d="z",e="z",f="z")
|
96
|
+
return [a,b,c,d,e,f]
|
97
|
+
end
|
98
|
+
end
|
99
|
+
|
100
|
+
obj = SomeClass.new
|
101
|
+
|
102
|
+
obj.whatever(
|
103
|
+
a: "a",
|
104
|
+
b: "b",
|
105
|
+
c: "c",
|
106
|
+
d: "d",
|
107
|
+
f: "f"
|
108
|
+
).should == %w{a b c d z f}
|
109
|
+
end
|
110
|
+
|
111
|
+
specify "above" do
|
112
|
+
class SomeClass
|
113
|
+
extend NamedParameter
|
114
|
+
|
115
|
+
named
|
116
|
+
def whatever(a,b,c="z", d="z",e="z",f="z")
|
117
|
+
return [a,b,c,d,e,f]
|
118
|
+
end
|
119
|
+
end
|
120
|
+
|
121
|
+
obj = SomeClass.new
|
122
|
+
|
123
|
+
obj.whatever(
|
124
|
+
a: "a",
|
125
|
+
b: "b",
|
126
|
+
c: "c",
|
127
|
+
d: "d",
|
128
|
+
f: "f"
|
129
|
+
).should == %w{a b c d z f}
|
130
|
+
end
|
131
|
+
end
|
132
|
+
|
133
|
+
context %q{named def whatever(a,b="z",c=lambda{|arg1,arg2| arg1[1,2] + "test"})} do
|
134
|
+
specify "inline" do
|
135
|
+
class SomeClass
|
136
|
+
extend NamedParameter
|
137
|
+
|
138
|
+
named def whatever(a,b="z",c=lambda{|arg1,arg2| arg1[1,2] + "test"},d="z")
|
139
|
+
return [a,b,c,d]
|
140
|
+
end
|
141
|
+
end
|
142
|
+
|
143
|
+
obj = SomeClass.new
|
144
|
+
|
145
|
+
return_ = obj.whatever(
|
146
|
+
a: "a",
|
147
|
+
d: "d"
|
148
|
+
)
|
149
|
+
return_[0].should == "a"
|
150
|
+
return_[1].should == "z"
|
151
|
+
return_[2].should be_a Proc
|
152
|
+
return_[3].should == "d"
|
153
|
+
end
|
154
|
+
|
155
|
+
specify "above" do
|
156
|
+
class SomeClass
|
157
|
+
extend NamedParameter
|
158
|
+
|
159
|
+
named
|
160
|
+
def whatever(a,b="z",c=lambda{|arg1,arg2| arg1[1,2] + "test"},d="z")
|
161
|
+
return [a,b,c,d]
|
162
|
+
end
|
163
|
+
end
|
164
|
+
|
165
|
+
obj = SomeClass.new
|
166
|
+
|
167
|
+
return_ = obj.whatever(
|
168
|
+
a: "a",
|
169
|
+
d: "d"
|
170
|
+
)
|
171
|
+
return_[0].should == "a"
|
172
|
+
return_[1].should == "z"
|
173
|
+
return_[2].should be_a Proc
|
174
|
+
return_[3].should == "d"
|
175
|
+
end
|
176
|
+
end
|
177
|
+
|
178
|
+
context %q{named def whatever(a,b="z",c="z,z",d="z")} do
|
179
|
+
specify "inline" do
|
180
|
+
class SomeClass
|
181
|
+
extend NamedParameter
|
182
|
+
|
183
|
+
named def whatever(a,b="z",c="z,z",d="z")
|
184
|
+
return [a,b,c,d]
|
185
|
+
end
|
186
|
+
end
|
187
|
+
|
188
|
+
obj = SomeClass.new
|
189
|
+
|
190
|
+
obj.whatever(
|
191
|
+
a: "a",
|
192
|
+
d: "d"
|
193
|
+
).should == %w{a z z,z d}
|
194
|
+
end
|
195
|
+
|
196
|
+
specify "above" do
|
197
|
+
class SomeClass
|
198
|
+
extend NamedParameter
|
199
|
+
|
200
|
+
named
|
201
|
+
def whatever(a,b="z",c="z,z",d="z")
|
202
|
+
return [a,b,c,d]
|
203
|
+
end
|
204
|
+
end
|
205
|
+
|
206
|
+
obj = SomeClass.new
|
207
|
+
|
208
|
+
obj.whatever(
|
209
|
+
a: "a",
|
210
|
+
d: "d"
|
211
|
+
).should == %w{a z z,z d}
|
212
|
+
end
|
213
|
+
end
|
214
|
+
|
215
|
+
context %q{named def whatever(a,b="z",c=/z,z/,d="z")} do
|
216
|
+
specify "inline" do
|
217
|
+
class SomeClass
|
218
|
+
extend NamedParameter
|
219
|
+
|
220
|
+
named def whatever(a,b="z",c=/z,z/,d="z")
|
221
|
+
return [a,b,c,d]
|
222
|
+
end
|
223
|
+
end
|
224
|
+
|
225
|
+
obj = SomeClass.new
|
226
|
+
|
227
|
+
obj.whatever(
|
228
|
+
a: "a",
|
229
|
+
d: "d"
|
230
|
+
).should == ["a", "z", /z,z/, "d"]
|
231
|
+
end
|
232
|
+
|
233
|
+
specify "above" do
|
234
|
+
class SomeClass
|
235
|
+
extend NamedParameter
|
236
|
+
|
237
|
+
named
|
238
|
+
def whatever(a,b="z",c=/z,z/,d="z")
|
239
|
+
return [a,b,c,d]
|
240
|
+
end
|
241
|
+
end
|
242
|
+
|
243
|
+
obj = SomeClass.new
|
244
|
+
|
245
|
+
obj.whatever(
|
246
|
+
a: "a",
|
247
|
+
d: "d"
|
248
|
+
).should == ["a", "z", /z,z/, "d"]
|
249
|
+
end
|
250
|
+
end
|
251
|
+
|
252
|
+
end
|
253
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
module NamedParameter
|
4
|
+
describe ParametersAdapter do
|
5
|
+
context "two optional parameters" do
|
6
|
+
it 'maintain the default value in the middle too' do
|
7
|
+
def test_method(arg1 = "default1", arg2 = "default2");end
|
8
|
+
|
9
|
+
method = method(:test_method)
|
10
|
+
adapter = ParametersAdapter.new(method)
|
11
|
+
arguments = adapter.hash_to_args({arg2: "argument2"})
|
12
|
+
|
13
|
+
arguments.should == ["default1", "argument2"]
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
context "one parameter with default value as a lambda" do
|
18
|
+
it 'maintain the default value in the middle too' do
|
19
|
+
def test_method(a,b="z",c=lambda{|arg1,arg2| arg1 + "test"},d="z");end
|
20
|
+
|
21
|
+
method = method(:test_method)
|
22
|
+
adapter = ParametersAdapter.new(method)
|
23
|
+
arguments = adapter.hash_to_args({a: "a", d: "d"})
|
24
|
+
|
25
|
+
arguments[0].should == "a"
|
26
|
+
arguments[1].should == "z"
|
27
|
+
arguments[2].should be_a Proc
|
28
|
+
arguments[3].should == "d"
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
metadata
CHANGED
@@ -1,45 +1,24 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: named_parameter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
|
-
- Hugo Roque
|
8
|
+
- Hugo Roque
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
13
|
-
dependencies:
|
14
|
-
- !ruby/object:Gem::Dependency
|
15
|
-
name: bundler
|
16
|
-
requirement: &77836440 !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
|
-
requirements:
|
19
|
-
- - ~>
|
20
|
-
- !ruby/object:Gem::Version
|
21
|
-
version: 1.0.0
|
22
|
-
type: :development
|
23
|
-
prerelease: false
|
24
|
-
version_requirements: *77836440
|
25
|
-
- !ruby/object:Gem::Dependency
|
26
|
-
name: jeweler
|
27
|
-
requirement: &77835570 !ruby/object:Gem::Requirement
|
28
|
-
none: false
|
29
|
-
requirements:
|
30
|
-
- - ~>
|
31
|
-
- !ruby/object:Gem::Version
|
32
|
-
version: 1.6.0
|
33
|
-
type: :development
|
34
|
-
prerelease: false
|
35
|
-
version_requirements: *77835570
|
12
|
+
date: 2012-09-09 00:00:00.000000000 Z
|
13
|
+
dependencies: []
|
36
14
|
description: Allows named parameter in ruby
|
37
|
-
email:
|
15
|
+
email:
|
16
|
+
- hugolnx@gmail.com
|
38
17
|
executables: []
|
39
18
|
extensions: []
|
40
|
-
extra_rdoc_files:
|
41
|
-
- README.md
|
19
|
+
extra_rdoc_files: []
|
42
20
|
files:
|
21
|
+
- .gitignore
|
43
22
|
- Gemfile
|
44
23
|
- README.md
|
45
24
|
- Rakefile
|
@@ -47,6 +26,7 @@ files:
|
|
47
26
|
- lib/named_parameter/error.rb
|
48
27
|
- lib/named_parameter/errors.rb
|
49
28
|
- lib/named_parameter/errors/not_hash.rb
|
29
|
+
- lib/named_parameter/errors/on_irb_exception.rb
|
50
30
|
- lib/named_parameter/errors/required_parameters.rb
|
51
31
|
- lib/named_parameter/errors/undefined_parameters.rb
|
52
32
|
- lib/named_parameter/named_above.rb
|
@@ -55,7 +35,10 @@ files:
|
|
55
35
|
- lib/named_parameter/named_method_transmuter.rb
|
56
36
|
- lib/named_parameter/named_parameter.rb
|
57
37
|
- lib/named_parameter/parameters.rb
|
38
|
+
- lib/named_parameter/parameters_adapter.rb
|
39
|
+
- lib/named_parameter/version.rb
|
58
40
|
- named_parameter.gemspec
|
41
|
+
- spec/bug_fixing/parameters_order_spec.rb
|
59
42
|
- spec/features/named_above/class_self_named_method_feature_spec.rb
|
60
43
|
- spec/features/named_above/individual_named_method_feature_spec.rb
|
61
44
|
- spec/features/named_above/singleton_named_method_feature_spec.rb
|
@@ -69,9 +52,9 @@ files:
|
|
69
52
|
- spec/unit/errors/undefined_parameters_spec.rb
|
70
53
|
- spec/unit/named_method_spec.rb
|
71
54
|
- spec/unit/named_method_transmuter_spec.rb
|
72
|
-
|
73
|
-
|
74
|
-
|
55
|
+
- spec/unit/parameters_adapter_spec.rb
|
56
|
+
homepage: http://github.com/hugolnx/named_parameter/
|
57
|
+
licenses: []
|
75
58
|
post_install_message:
|
76
59
|
rdoc_options: []
|
77
60
|
require_paths:
|
@@ -93,5 +76,20 @@ rubyforge_project:
|
|
93
76
|
rubygems_version: 1.8.15
|
94
77
|
signing_key:
|
95
78
|
specification_version: 3
|
96
|
-
summary:
|
97
|
-
test_files:
|
79
|
+
summary: named_parameter-1.0.1
|
80
|
+
test_files:
|
81
|
+
- spec/bug_fixing/parameters_order_spec.rb
|
82
|
+
- spec/features/named_above/class_self_named_method_feature_spec.rb
|
83
|
+
- spec/features/named_above/individual_named_method_feature_spec.rb
|
84
|
+
- spec/features/named_above/singleton_named_method_feature_spec.rb
|
85
|
+
- spec/features/named_inline/class_self_named_method_feature_spec.rb
|
86
|
+
- spec/features/named_inline/individual_named_method_feature_spec.rb
|
87
|
+
- spec/features/named_inline/singleton_named_method_feature_spec.rb
|
88
|
+
- spec/spec_helper.rb
|
89
|
+
- spec/unit/error_spec.rb
|
90
|
+
- spec/unit/errors/not_hash_spec.rb
|
91
|
+
- spec/unit/errors/required_parameters_spec.rb
|
92
|
+
- spec/unit/errors/undefined_parameters_spec.rb
|
93
|
+
- spec/unit/named_method_spec.rb
|
94
|
+
- spec/unit/named_method_transmuter_spec.rb
|
95
|
+
- spec/unit/parameters_adapter_spec.rb
|