dslh 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,15 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 1b673d3f47872a6187fcad5e8ca2129852d85f3b
4
- data.tar.gz: 63f511214fb994063ce90fa20e86d003a6871f54
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ Zjg0MDVhNGE3MTM3YzdkZmE2ZjhhZDFiZWNkYzQzNDdlMzEzMzEzZg==
5
+ data.tar.gz: !binary |-
6
+ ODU1OWU1MmFiMDdjMjg3Mzc1OWY2MWRjMTE3NzE2Y2IwMzZhNTdlOQ==
5
7
  SHA512:
6
- metadata.gz: 4e0efa411f1ae09ce818e70ff172f0252f9e029311d5d9a56b2d43cc485b286cb34a1a89826eab752c8c0d2cd1871050d1d00e511062b354c907ed0ebeb6594a
7
- data.tar.gz: 07ed4b621f2bf933511010ea1cd2b5a0c6a1caa1eeafa45cca8ca3d2e3bf52f8b3333dd99973b5a9580948447f0d05318638111d9fa14b0edd272cdda310e3e9
8
+ metadata.gz: !binary |-
9
+ Nzg3MTEzMjU3NzI1MGEyOGE1YTk3MWRmZTY1NDYzMGQ0NjAwNDQwNGM0OTc1
10
+ N2E5ZjViOTc1YzUyMmM5ZGNlZmQ1ODkyMGNhNTlmM2IyNTU3NTA3OTJmMzU4
11
+ NjM4ZjRlYjU4ZDMwOTVlMDY0NTYyNTllYWVmMTNlN2I0OTFiMDI=
12
+ data.tar.gz: !binary |-
13
+ MWUxNzFmMjk3Nzg2ZTcwYzZmZjljY2U1Yjk1OWRkZTJiMjk5NjhmZGU4YWE1
14
+ NjFlMDk2YmE4NDA5OTNkYWNhOWE5NDIyZDRkNzBjYzMwZTMyMmYzNjJhMDAy
15
+ NDNkMjIxNTg2YWQyNDUyNDNhOGU3NzBmMTNlMzExZTY3OGUzOWE=
@@ -32,6 +32,7 @@ class Dslh
32
32
  scope = Scope.new
33
33
  scope.instance_variable_set(:@__options__, @options)
34
34
  scope.instance_variable_set(:@__hash__, retval)
35
+ @options[:scope_hook].call(scope) if @options[:scope_hook]
35
36
 
36
37
  if expr
37
38
  eval_args = [expr]
@@ -1,3 +1,3 @@
1
1
  class Dslh
2
- VERSION = '0.1.4'
2
+ VERSION = '0.1.5'
3
3
  end
@@ -301,4 +301,26 @@ describe Dslh do
301
301
  :key3=>"ZOO"}
302
302
  )
303
303
  end
304
+
305
+ it 'should hook scope' do
306
+ scope_hook = proc do |scope|
307
+ scope.instance_eval(<<-EOS)
308
+ def func
309
+ 123
310
+ end
311
+ EOS
312
+ end
313
+
314
+ h = Dslh.eval :scope_hook => scope_hook do
315
+ key1 func
316
+ key2 do
317
+ key21 func
318
+ key22 do
319
+ key221 func
320
+ end
321
+ end
322
+ end
323
+
324
+ expect(h).to eq({:key1=>123, :key2=>{:key21=>123, :key22=>{:key221=>123}}})
325
+ end
304
326
  end
metadata CHANGED
@@ -1,55 +1,55 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dslh
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Genki Sugawara
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-26 00:00:00.000000000 Z
11
+ date: 2014-02-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>='
17
+ - - ! '>='
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>='
24
+ - - ! '>='
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ! '>='
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ! '>='
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ! '>='
46
46
  - !ruby/object:Gem::Version
47
47
  version: 2.11.0
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ! '>='
53
53
  - !ruby/object:Gem::Version
54
54
  version: 2.11.0
55
55
  description: It define Hash as a DSL.
@@ -80,21 +80,20 @@ require_paths:
80
80
  - lib
81
81
  required_ruby_version: !ruby/object:Gem::Requirement
82
82
  requirements:
83
- - - '>='
83
+ - - ! '>='
84
84
  - !ruby/object:Gem::Version
85
85
  version: '0'
86
86
  required_rubygems_version: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - '>='
88
+ - - ! '>='
89
89
  - !ruby/object:Gem::Version
90
90
  version: '0'
91
91
  requirements: []
92
92
  rubyforge_project:
93
- rubygems_version: 2.0.14
93
+ rubygems_version: 2.1.11
94
94
  signing_key:
95
95
  specification_version: 4
96
96
  summary: It define Hash as a DSL.
97
97
  test_files:
98
98
  - spec/dslh_spec.rb
99
99
  - spec/spec_helper.rb
100
- has_rdoc: