odm 0.1.0.alpha

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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 1777cc023b2925b282b8258d8bd775fe22346d81
4
+ data.tar.gz: 48fafb1d2ca288764ac7795c755ece47a773644d
5
+ SHA512:
6
+ metadata.gz: b1e72fdca127c2ea42adb825653137c8555366411b98d25dedfc33e63e60e58f029e5cc079ac3f27f71c23a24a29993192e8cbd038480ac1305f792924ee74dc
7
+ data.tar.gz: bea277b9776ca5ed4e9f6455f84a8887654706dd5dad624ded59aed33c60f870b6f7eb36b9abe88e191180ceddb355c0af376ccb1c249e90300d7151e07ed1f7
data/.gitignore ADDED
@@ -0,0 +1,2 @@
1
+ pkg/
2
+ Gemfile.lock
data/Gemfile ADDED
@@ -0,0 +1,2 @@
1
+ source :rubygems
2
+ gemspec
data/LICENSE ADDED
@@ -0,0 +1,8 @@
1
+ Copyright (c) 2014 Adam Luzsi
2
+
3
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
4
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
5
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
6
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
7
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
8
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
data/README.md ADDED
@@ -0,0 +1,64 @@
1
+ ARGV
2
+ ========
3
+
4
+ Extension for ARGV obj.
5
+ With this extension module, you can parse in an easy way the script input tags
6
+
7
+ ### example
8
+
9
+ ```ruby
10
+
11
+ require 'argv'
12
+
13
+ #$ ruby sample/test.rb --test test this ok
14
+
15
+ puts ARGV.to_hash
16
+ # {"--test"=>"test"}
17
+
18
+ puts ARGV.to_hash( multi_value: true )
19
+ # {"--test"=>["test", "this", "ok"]}
20
+
21
+ puts ARGV.to_hash( sym_key: true )
22
+ # {:test=>"test"}
23
+
24
+ puts ARGV.to_hash( s: true, m: true )
25
+ # {:test=>["test", "this", "ok"]}
26
+
27
+ puts ARGV.values.inspect
28
+ # ["test", "this", "ok"]
29
+
30
+ puts ARGV.keys.inspect
31
+ # ["--test"]
32
+
33
+ puts ARGV.flag_syms.inspect
34
+ # [:test, :test, :this, :ok]
35
+
36
+ ```
37
+
38
+ #### For Modules
39
+
40
+ if you write module and you want to have some custom tags and help msg for that,
41
+ use the following example
42
+
43
+ ```ruby
44
+
45
+ require 'argv'
46
+
47
+ ARGVEXT.add_help_msg "This will show you the help msg (this)",:helper,:help,:h
48
+
49
+ #
50
+ # ARGVEXT.help_msg or show_help will read on your values and will produce the following with this example
51
+ #
52
+ # This will show you the help msg (this)
53
+ # --helper
54
+ # --help
55
+ # -h
56
+
57
+ # this will run on the terminal and break Process,
58
+ # if the user give one of the helper tags as argv
59
+
60
+ ```
61
+
62
+ ### Test
63
+
64
+ * you can find a test file in the sample named as "test"
data/Rakefile ADDED
@@ -0,0 +1 @@
1
+ require File.join"bundler","gem_tasks"
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.1.0.alpha
data/examples/test.rb ADDED
@@ -0,0 +1,30 @@
1
+ require "odm"
2
+
3
+ #$ ruby sample/test.rb --test test this ok
4
+
5
+ # new help
6
+ ARGV.add_help "heeeelp meeeeee~~~",:no
7
+
8
+ ARGV.show_help
9
+
10
+ puts "","original ARGV:",ARGV.inspect,""
11
+
12
+ puts "hash from argv:",ARGV.to_hash,""
13
+ # {"--test"=>"test"}
14
+
15
+ puts "multi valued hash:",ARGV.to_hash( multi_value: true ),""
16
+ # {"--test"=>["test", "this", "ok"]}
17
+
18
+ puts "sym keyed hash:",ARGV.to_hash( sym_key: true ),""
19
+ # {:test=>"test"}
20
+
21
+ puts "sym keyed multi valued hash:",ARGV.to_hash( s: true, m: true ),""
22
+ # {:test=>["test", "this", "ok"]}
23
+
24
+ puts "argv values without the tags:",ARGV.values.inspect,""
25
+ # ["test", "this", "ok"]
26
+
27
+ puts "argv tags, \"keys\":",ARGV.keys.inspect,""
28
+ # ["--test"]
29
+
30
+ puts "symbolized flags:",ARGV.sym_flags.inspect,""
data/lib/odm/ext.rb ADDED
@@ -0,0 +1,26 @@
1
+ module ODM
2
+
3
+ module EXT
4
+
5
+ def odm_convert obj
6
+ raise unless self.class == Class
7
+
8
+ case true
9
+
10
+ when self <= ::Hash
11
+
12
+ when self <= ::Array
13
+
14
+ when self <= ::Array
15
+
16
+ when self <= ::Array
17
+ when self <= ::Array
18
+ when self <= ::Array
19
+
20
+ end
21
+
22
+ end
23
+
24
+ end
25
+
26
+ end
data/lib/odm.rb ADDED
@@ -0,0 +1 @@
1
+ require 'odm/ext'
data/odm.gemspec ADDED
@@ -0,0 +1,21 @@
1
+ # coding: utf-8
2
+
3
+ Gem::Specification.new do |spec|
4
+
5
+ spec.name = "odm"
6
+ spec.version = File.open(File.join(File.dirname(__FILE__),"VERSION")).read.split("\n")[0].chomp.gsub(' ','')
7
+ spec.authors = ["Adam Luzsi"]
8
+ spec.email = ["adamluzsi@gmail.com"]
9
+ spec.description = %q{ Simple Object Data Mapper. Pars Array of Hash into random Class of classes to make it more object oriented }
10
+ spec.summary = %q{ Simple Object Data Mapper }
11
+
12
+ spec.files = `git ls-files`.split($/)
13
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
14
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
15
+ spec.require_paths = ["lib"]
16
+
17
+ spec.add_development_dependency "bundler"
18
+ spec.add_development_dependency "rake"
19
+ spec.add_dependency "mpatch", ">= 2.12.1"
20
+
21
+ end
metadata ADDED
@@ -0,0 +1,96 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: odm
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0.alpha
5
+ platform: ruby
6
+ authors:
7
+ - Adam Luzsi
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-05-09 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: mpatch
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: 2.12.1
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: 2.12.1
55
+ description: " Simple Object Data Mapper. Pars Array of Hash into random Class of
56
+ classes to make it more object oriented "
57
+ email:
58
+ - adamluzsi@gmail.com
59
+ executables: []
60
+ extensions: []
61
+ extra_rdoc_files: []
62
+ files:
63
+ - ".gitignore"
64
+ - Gemfile
65
+ - LICENSE
66
+ - README.md
67
+ - Rakefile
68
+ - VERSION
69
+ - examples/test.rb
70
+ - lib/odm.rb
71
+ - lib/odm/ext.rb
72
+ - odm.gemspec
73
+ homepage:
74
+ licenses: []
75
+ metadata: {}
76
+ post_install_message:
77
+ rdoc_options: []
78
+ require_paths:
79
+ - lib
80
+ required_ruby_version: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: '0'
85
+ required_rubygems_version: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">"
88
+ - !ruby/object:Gem::Version
89
+ version: 1.3.1
90
+ requirements: []
91
+ rubyforge_project:
92
+ rubygems_version: 2.2.2
93
+ signing_key:
94
+ specification_version: 4
95
+ summary: Simple Object Data Mapper
96
+ test_files: []