dslkit 0.2.12 → 0.2.13

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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: aac60c2535545ad7c70e3c53ff3feaa4edb05ade
4
+ data.tar.gz: b700102407f273e157d919f1c50cb331beecafa6
5
+ SHA512:
6
+ metadata.gz: 4aa261c6e4d175d9ed130755aaeaf7f511dd62d7447f9722129bfaf32ccaed98bba96808221bf747047041dfe523ecdc89378b27e1e1dd8849d7e87d22824aa5
7
+ data.tar.gz: 02aa773a47d3c0078d641cb420711018fda27f398569bd800d4fd7fa79259a62fb2dedc0f83ab401c1e69e35cf0130f8ea3df031e5a775dfb34ccf608d4431cf
@@ -2,7 +2,10 @@ rvm:
2
2
  - 1.8.7
3
3
  - 1.9.2
4
4
  - 1.9.3
5
+ - 2.0.0
5
6
  - ruby-head
6
7
  - ree
7
- - rbx
8
- - jruby
8
+ - rbx-18mode
9
+ - rbx-19mode
10
+ - jruby-18mode
11
+ - jruby-19mode
data/Gemfile CHANGED
@@ -1,6 +1,6 @@
1
1
  # vim: set filetype=ruby et sw=2 ts=2:
2
2
 
3
- source :rubygems
3
+ source 'https://rubygems.org'
4
4
 
5
5
  gemspec
6
6
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.12
1
+ 0.2.13
@@ -2,24 +2,24 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = "dslkit"
5
- s.version = "0.2.12"
5
+ s.version = "0.2.13"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Florian Frank"]
9
- s.date = "2012-10-17"
9
+ s.date = "2013-06-11"
10
10
  s.description = "This library contains recurring patterns, that are useful in the creation of internal Domain Specific Languages (DSL) in Ruby."
11
11
  s.email = "flori@ping.de"
12
- s.extra_rdoc_files = ["README.rdoc", "lib/dslkit/polite.rb", "lib/dslkit/rude.rb", "lib/dslkit/version.rb", "lib/dslkit.rb"]
13
- s.files = [".gitignore", ".rvmrc", ".travis.yml", "CHANGES", "COPYING", "Gemfile", "README.rdoc", "Rakefile", "TODO", "VERSION", "dslkit.gemspec", "examples/add_one.png", "examples/add_one.stm", "examples/bb3.png", "examples/bb3.stm", "examples/bb3_19.stm", "examples/concatenate_compare.mtm", "examples/concatenate_compare.png", "examples/concatenate_compare_19.mtm", "examples/length_difference.mtm", "examples/length_difference.png", "examples/length_difference_19.mtm", "examples/let.rb", "examples/mail.rb", "examples/minsky.rb", "examples/multiply.reg", "examples/null_pattern.rb", "examples/ones_difference-mtm.png", "examples/ones_difference-stm.png", "examples/ones_difference.mtm", "examples/ones_difference.stm", "examples/ones_difference_19.mtm", "examples/ones_difference_19.stm", "examples/prefix-equals-suffix-reversed-with-infix.png", "examples/prefix-equals-suffix-reversed-with-infix.stm", "examples/prefix-equals-suffix-reversed-with-infix_19.stm", "examples/recipe.rb", "examples/recipe2.rb", "examples/recipe_common.rb", "examples/subtract.reg", "examples/turing-graph.rb", "examples/turing.rb", "lib/dslkit.rb", "lib/dslkit/polite.rb", "lib/dslkit/rude.rb", "lib/dslkit/version.rb", "tests/concern_test.rb", "tests/dynamic_scope_test.rb", "tests/from_module_test.rb", "tests/polite_test.rb", "tests/scope_test.rb", "tests/test_helper.rb"]
12
+ s.extra_rdoc_files = ["README.rdoc", "lib/dslkit.rb", "lib/dslkit/polite.rb", "lib/dslkit/rude.rb", "lib/dslkit/version.rb"]
13
+ s.files = [".gitignore", ".travis.yml", "CHANGES", "COPYING", "Gemfile", "README.rdoc", "Rakefile", "TODO", "VERSION", "dslkit.gemspec", "examples/add_one.png", "examples/add_one.stm", "examples/bb3.png", "examples/bb3.stm", "examples/bb3_19.stm", "examples/concatenate_compare.mtm", "examples/concatenate_compare.png", "examples/concatenate_compare_19.mtm", "examples/length_difference.mtm", "examples/length_difference.png", "examples/length_difference_19.mtm", "examples/let.rb", "examples/mail.rb", "examples/minsky.rb", "examples/multiply.reg", "examples/null_pattern.rb", "examples/ones_difference-mtm.png", "examples/ones_difference-stm.png", "examples/ones_difference.mtm", "examples/ones_difference.stm", "examples/ones_difference_19.mtm", "examples/ones_difference_19.stm", "examples/prefix-equals-suffix-reversed-with-infix.png", "examples/prefix-equals-suffix-reversed-with-infix.stm", "examples/prefix-equals-suffix-reversed-with-infix_19.stm", "examples/recipe.rb", "examples/recipe2.rb", "examples/recipe_common.rb", "examples/subtract.reg", "examples/turing-graph.rb", "examples/turing.rb", "lib/dslkit.rb", "lib/dslkit/polite.rb", "lib/dslkit/rude.rb", "lib/dslkit/version.rb", "tests/concern_test.rb", "tests/dynamic_scope_test.rb", "tests/from_module_test.rb", "tests/polite_test.rb", "tests/scope_test.rb", "tests/test_helper.rb"]
14
14
  s.homepage = "http://flori.github.com/dslkit"
15
15
  s.rdoc_options = ["--title", "Dslkit - Kit for building DSLs in Ruby", "--main", "README.rdoc"]
16
16
  s.require_paths = ["lib"]
17
- s.rubygems_version = "1.8.24"
17
+ s.rubygems_version = "2.0.3"
18
18
  s.summary = "Kit for building DSLs in Ruby"
19
19
  s.test_files = ["tests/concern_test.rb", "tests/dynamic_scope_test.rb", "tests/from_module_test.rb", "tests/polite_test.rb", "tests/scope_test.rb", "tests/test_helper.rb"]
20
20
 
21
21
  if s.respond_to? :specification_version then
22
- s.specification_version = 3
22
+ s.specification_version = 4
23
23
 
24
24
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
25
25
  s.add_development_dependency(%q<gem_hadar>, ["~> 0.1.8"])
@@ -685,6 +685,12 @@ module DSLKit
685
685
 
686
686
  attr_accessor :dynamic_scope_name
687
687
 
688
+ def dynamic_defined?(id)
689
+ self.dynamic_scope_name ||= :variables
690
+ scope_reverse(dynamic_scope_name) { |c| c.key?(id) and return true }
691
+ false
692
+ end
693
+
688
694
  def dynamic_scope(&block)
689
695
  self.dynamic_scope_name ||= :variables
690
696
  scope_block(Context.new, dynamic_scope_name, &block)
@@ -1,6 +1,6 @@
1
1
  module DSLKit
2
2
  # DSLKit version
3
- VERSION = '0.2.12'
3
+ VERSION = '0.2.13'
4
4
  VERSION_ARRAY = VERSION.split(/\./).map { |x| x.to_i } # :nodoc:
5
5
  VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
6
6
  VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
@@ -6,12 +6,16 @@ class DynamicScopeTest < Test::Unit::TestCase
6
6
 
7
7
  def test_dynamic_scoping
8
8
  assert_raise(NameError) { foo }
9
+ assert_equal false, dynamic_defined?(:foo)
9
10
  dynamic_scope do
10
11
  assert_raise(NameError) { foo }
12
+ assert_equal false, dynamic_defined?(:foo)
11
13
  self.foo = 1
12
14
  assert_equal 1, foo
15
+ assert_equal true, dynamic_defined?(:foo)
13
16
  dynamic_scope do
14
17
  assert_equal 1, foo
18
+ assert_equal true, dynamic_defined?(:foo)
15
19
  self.foo = 2
16
20
  assert_equal 2, foo
17
21
  dynamic_scope do
@@ -21,6 +25,7 @@ class DynamicScopeTest < Test::Unit::TestCase
21
25
  end
22
26
  assert_equal 1, foo
23
27
  end
28
+ assert_equal false, dynamic_defined?(:foo)
24
29
  assert_raise(NameError) { foo }
25
30
  end
26
31
  end
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dslkit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.12
5
- prerelease:
4
+ version: 0.2.13
6
5
  platform: ruby
7
6
  authors:
8
7
  - Florian Frank
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-10-17 00:00:00.000000000 Z
11
+ date: 2013-06-11 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: gem_hadar
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ~>
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
22
20
  type: :development
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - ~>
28
25
  - !ruby/object:Gem::Version
@@ -30,23 +27,20 @@ dependencies:
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: utils
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - '>='
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - '>='
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: term-ansicolor
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - ~>
52
46
  - !ruby/object:Gem::Version
@@ -54,7 +48,6 @@ dependencies:
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
52
  - - ~>
60
53
  - !ruby/object:Gem::Version
@@ -62,7 +55,6 @@ dependencies:
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: tins
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
59
  - - ~>
68
60
  - !ruby/object:Gem::Version
@@ -70,7 +62,6 @@ dependencies:
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
66
  - - ~>
76
67
  - !ruby/object:Gem::Version
@@ -82,13 +73,12 @@ executables: []
82
73
  extensions: []
83
74
  extra_rdoc_files:
84
75
  - README.rdoc
76
+ - lib/dslkit.rb
85
77
  - lib/dslkit/polite.rb
86
78
  - lib/dslkit/rude.rb
87
79
  - lib/dslkit/version.rb
88
- - lib/dslkit.rb
89
80
  files:
90
81
  - .gitignore
91
- - .rvmrc
92
82
  - .travis.yml
93
83
  - CHANGES
94
84
  - COPYING
@@ -141,6 +131,7 @@ files:
141
131
  - tests/test_helper.rb
142
132
  homepage: http://flori.github.com/dslkit
143
133
  licenses: []
134
+ metadata: {}
144
135
  post_install_message:
145
136
  rdoc_options:
146
137
  - --title
@@ -150,25 +141,20 @@ rdoc_options:
150
141
  require_paths:
151
142
  - lib
152
143
  required_ruby_version: !ruby/object:Gem::Requirement
153
- none: false
154
144
  requirements:
155
- - - ! '>='
145
+ - - '>='
156
146
  - !ruby/object:Gem::Version
157
147
  version: '0'
158
- segments:
159
- - 0
160
- hash: 663480197723648101
161
148
  required_rubygems_version: !ruby/object:Gem::Requirement
162
- none: false
163
149
  requirements:
164
- - - ! '>='
150
+ - - '>='
165
151
  - !ruby/object:Gem::Version
166
152
  version: '0'
167
153
  requirements: []
168
154
  rubyforge_project:
169
- rubygems_version: 1.8.24
155
+ rubygems_version: 2.0.3
170
156
  signing_key:
171
- specification_version: 3
157
+ specification_version: 4
172
158
  summary: Kit for building DSLs in Ruby
173
159
  test_files:
174
160
  - tests/concern_test.rb