deep_tree 0.0.2 → 0.0.3

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/Gemfile CHANGED
@@ -5,4 +5,5 @@ gemspec
5
5
 
6
6
  group :benchmarks do
7
7
  gem 'hashie'
8
+ gem 'require_relative', :platform => "ruby_18"
8
9
  end
@@ -1,4 +1,4 @@
1
- require_relative 'benchmark_helper'
1
+ require File.join(File.dirname(__FILE__), 'benchmark_helper')
2
2
 
3
3
  bad_path = %w(three_level nope nada)
4
4
 
@@ -1,6 +1,8 @@
1
1
  require 'rubygems'
2
2
  require 'bundler'
3
+ require 'require_relative' if RUBY_VERSION =~ /1\.8/
3
4
  require 'benchmark'
5
+
4
6
  require_relative '../lib/deep_tree'
5
7
  require_relative '../lib/deep_tree/hash'
6
8
 
@@ -1,4 +1,4 @@
1
- require_relative 'benchmark_helper'
1
+ require File.join(File.dirname(__FILE__), 'benchmark_helper')
2
2
 
3
3
  good_path = %w(three_level level_two level_one)
4
4
 
@@ -5,15 +5,15 @@ class DeepTree
5
5
 
6
6
  attr_accessor :tree
7
7
 
8
- def self.get_leaf(parent, *args)
8
+ def self.get_leaf(parent, *args, &block)
9
9
  args.each_with_index do |key, index|
10
10
  result = case
11
11
  when index == (args.length - 1)
12
- return parent[key].nil? && block_given? ? yield : parent[key]
12
+ return parent[key].nil? && block ? yield : parent[key]
13
13
  when parent[key].is_a?(Hash)
14
14
  parent = parent[key]
15
15
  else
16
- return block_given? ? yield : nil
16
+ return block ? yield : nil
17
17
  end
18
18
  end
19
19
  end
@@ -26,12 +26,8 @@ class DeepTree
26
26
  end
27
27
  end
28
28
 
29
- def get_leaf(*args)
30
- if block_given?
31
- DeepTree.get_leaf(tree, *args) { yield }
32
- else
33
- DeepTree.get_leaf(tree, *args)
34
- end
29
+ def get_leaf(*args, &block)
30
+ DeepTree.get_leaf( tree, *args, &block )
35
31
  end
36
32
 
37
33
  def method_missing(*args)
@@ -1,11 +1,5 @@
1
1
  class Hash
2
-
3
- def get_leaf(*args)
4
- if block_given?
5
- DeepTree.get_leaf(self, *args) { yield }
6
- else
7
- DeepTree.get_leaf(self, *args)
8
- end
2
+ def get_leaf(*args, &block)
3
+ DeepTree.get_leaf( self, *args, &block )
9
4
  end
10
-
11
5
  end
@@ -1,3 +1,3 @@
1
1
  class DeepTree
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
metadata CHANGED
@@ -1,36 +1,47 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: deep_tree
3
- version: !ruby/object:Gem::Version
4
- version: 0.0.2
3
+ version: !ruby/object:Gem::Version
4
+ hash: 25
5
+ prerelease:
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 3
10
+ version: 0.0.3
5
11
  platform: ruby
6
- authors:
12
+ authors:
7
13
  - Patrick Tulskie
8
14
  autorequire:
9
15
  bindir: bin
10
16
  cert_chain: []
11
- date: 2013-12-11 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
17
+
18
+ date: 2013-12-20 00:00:00 -05:00
19
+ default_executable:
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
14
22
  name: minitest
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - '>='
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :development
21
23
  prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - '>='
25
- - !ruby/object:Gem::Version
26
- version: '0'
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ hash: 3
30
+ segments:
31
+ - 0
32
+ version: "0"
33
+ type: :development
34
+ version_requirements: *id001
27
35
  description: DeepTree simplifies fetching deeply nested nodes in Ruby hashes.
28
- email:
36
+ email:
29
37
  - patricktulskie@gmail.com
30
38
  executables: []
39
+
31
40
  extensions: []
41
+
32
42
  extra_rdoc_files: []
33
- files:
43
+
44
+ files:
34
45
  - .gitignore
35
46
  - Gemfile
36
47
  - LICENSE.txt
@@ -47,31 +58,41 @@ files:
47
58
  - spec/deep_tree_spec.rb
48
59
  - spec/hash_spec.rb
49
60
  - spec/spec_helper.rb
61
+ has_rdoc: true
50
62
  homepage: https://github.com/patricktulskie/deep_tree
51
- licenses:
63
+ licenses:
52
64
  - MIT
53
- metadata: {}
54
65
  post_install_message:
55
66
  rdoc_options: []
56
- require_paths:
67
+
68
+ require_paths:
57
69
  - lib
58
- required_ruby_version: !ruby/object:Gem::Requirement
59
- requirements:
60
- - - '>='
61
- - !ruby/object:Gem::Version
62
- version: '0'
63
- required_rubygems_version: !ruby/object:Gem::Requirement
64
- requirements:
65
- - - '>='
66
- - !ruby/object:Gem::Version
67
- version: '0'
70
+ required_ruby_version: !ruby/object:Gem::Requirement
71
+ none: false
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ hash: 3
76
+ segments:
77
+ - 0
78
+ version: "0"
79
+ required_rubygems_version: !ruby/object:Gem::Requirement
80
+ none: false
81
+ requirements:
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ hash: 3
85
+ segments:
86
+ - 0
87
+ version: "0"
68
88
  requirements: []
89
+
69
90
  rubyforge_project:
70
- rubygems_version: 2.0.6
91
+ rubygems_version: 1.5.3
71
92
  signing_key:
72
- specification_version: 4
93
+ specification_version: 3
73
94
  summary: Aids with finding deeply nested nodes in Ruby hashes.
74
- test_files:
95
+ test_files:
75
96
  - spec/deep_tree_spec.rb
76
97
  - spec/hash_spec.rb
77
98
  - spec/spec_helper.rb
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 7176f270d83663758388c7a28d8860aafed46d5d
4
- data.tar.gz: 80f2c1c3aac9e9083709386ce59be1f0c8d0b4c6
5
- SHA512:
6
- metadata.gz: eb14ad09f23558962316ea52cefa8ab3a06daafa91bd9590c709e78bf13d57a4058976a72413c650c00a50b93b4318cbad7498bc88c93bab85ad3812e4a5009e
7
- data.tar.gz: 51e55799b41d4f25a6473efb242401fe5cc3d999f1593fc19a5351a22e658a193c6f56a051e403e20d290f99fdaba6bdc62077763e1fd228f8e4b12543e0025b