tbpgr_utils 0.0.79 → 0.0.80

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -76,7 +76,7 @@ Or install it yourself as:
76
76
  |[EvalHelper#unless_code_after](#evalhelperunless_code_after) |create after-unless strings, for eval |
77
77
  |[TbpgrUtils File.insert_bom](#fileinsert_bom) |insert BOM to UTF-8 File |
78
78
  |[Ghostable module](#ghostable) |help to create ghost method(dynamic method define by ussing method_missing + pattern-method-name) |
79
- |[TbpgrUtils Hash#table](#hash-table) |get pipe format table string from key + value |
79
+ |[TbpgrUtils Hash#table](#hashtable) |get pipe format table string from key + value |
80
80
  |[TbpgrUtils Kernel booleans](#kerne-booleans) |True or False instance aliases. |
81
81
  |[TbpgrUtils Kernel#bulk_define_methods](#kernelbulk_define_methods) |define methods to classes. methods have simple return value. |
82
82
  |[TestToolbox Kernel#capture_stdout](#kernelcapture_stdout) |capture STDOUT |
@@ -92,6 +92,7 @@ Or install it yourself as:
92
92
  |[TbpgrUtils Numeric#dice_back](#numericdice_back) |return dice back number |
93
93
  |[TbpgrUtils Numeric#dozen](#numericdozen) |get dozen number |
94
94
  |[TbpgrUtils Numeric#is_ascii?](#numericis_ascii) |get is_ascii number |
95
+ |[TbpgrUtils Numeric to_binary_table](#numeric-to_binary_table) |binary table |
95
96
  |[TbpgrUtils Object#any_of?](#objectany_of) |if self match any one of items, return true |
96
97
  |[TbpgrUtils Object#boolean?](#objectboolean) |data type check for boolean |
97
98
  |[TbpgrUtils Object#guard](#objectguard) |data type check for guard |
@@ -2173,6 +2174,25 @@ require 'tbpgr_utils'
2173
2174
  128.is_ascii? # => return false
2174
2175
  ~~~
2175
2176
 
2177
+ [back to list](#list)
2178
+
2179
+ ### Numeric to_binary_table
2180
+ 1 to 3 case
2181
+ ~~~ruby
2182
+ require 'tbpgr_utils'
2183
+ Numeric.to_binary_table(1, 3)
2184
+ ~~~
2185
+
2186
+ result
2187
+ ~~~
2188
+ |10digit|2digit |
2189
+ |1 |00000001|
2190
+ |2 |00000010|
2191
+ |3 |00000011|
2192
+ ~~~
2193
+
2194
+ [back to list](#list)
2195
+
2176
2196
  ### Object#any_of?
2177
2197
  ~~~ruby
2178
2198
  require 'tbpgr_utils'
@@ -2772,6 +2792,7 @@ if you are Sublime Text2 user, you can use snippet for TbpgrUtils.
2772
2792
  https://github.com/tbpgr/tbpgr_utils_snippets
2773
2793
 
2774
2794
  ## History
2795
+ * version 0.0.80 : add Numeric to_binary_table
2775
2796
  * version 0.0.79 : add Array#to_table
2776
2797
  * version 0.0.78 : add String#ascii_unicode_table
2777
2798
  * version 0.0.77 : add String#is_meta_variable?, Symbol#is_meta_variable?
@@ -2,3 +2,4 @@
2
2
  require 'open_classes/numeric/dice_back'
3
3
  require 'open_classes/numeric/dozen'
4
4
  require 'open_classes/numeric/is_ascii'
5
+ require 'open_classes/numeric/to_binary_table'
@@ -0,0 +1,29 @@
1
+ # encoding: utf-8
2
+
3
+ # Numeric
4
+ class Numeric
5
+ # return is binary table
6
+ #
7
+ # ==== Examples
8
+ #
9
+ # 1 to 3 case
10
+ #
11
+ # Numeric.to_binary_table(1, 3)
12
+ #
13
+ # result
14
+ #
15
+ # |10digit|2digit |
16
+ # |1 |00000001|
17
+ # |2 |00000010|
18
+ # |3 |00000011|
19
+ #
20
+ def self.to_binary_table(from = 1, to = 10)
21
+ ret = []
22
+ size = to.to_s(2).size - 1
23
+ pad = (size / 8 + 1) * 8
24
+ ret << '|10digit|2digit|'
25
+ (from..to).each { |i|ret << "|#{i}|#{i.to_s(2).rjust(pad, '0')}|" }
26
+ joined = ret.join("\n") + "\n"
27
+ joined.justify_table(:right)
28
+ end
29
+ end
@@ -2,5 +2,5 @@
2
2
 
3
3
  # Tbpgr Utilities
4
4
  module TbpgrUtils
5
- VERSION = '0.0.79'
5
+ VERSION = '0.0.80'
6
6
  end
@@ -0,0 +1,60 @@
1
+ # encoding: utf-8
2
+ require 'spec_helper'
3
+ require 'tbpgr_utils'
4
+
5
+ describe Numeric do
6
+ context :to_binary_table do
7
+ cases = [
8
+ {
9
+ case_no: 1,
10
+ case_title: '1 case',
11
+ from: 1,
12
+ to: 3,
13
+ expected: <<-EOS
14
+ |10digit| 2digit|
15
+ | 1|00000001|
16
+ | 2|00000010|
17
+ | 3|00000011|
18
+ EOS
19
+ },
20
+ {
21
+ case_no: 2,
22
+ case_title: '1 case',
23
+ from: 255,
24
+ to: 256,
25
+ expected: <<-EOS
26
+ |10digit| 2digit|
27
+ | 255|0000000011111111|
28
+ | 256|0000000100000000|
29
+ EOS
30
+ },
31
+ ]
32
+
33
+ cases.each do |c|
34
+ it "|case_no=#{c[:case_no]}|case_title=#{c[:case_title]}" do
35
+ begin
36
+ case_before c
37
+
38
+ # -- given --
39
+ # nothing
40
+
41
+ # -- when --
42
+ actual = Numeric.to_binary_table(c[:from], c[:to])
43
+
44
+ # -- then --
45
+ expect(actual).to eq(c[:expected])
46
+ ensure
47
+ case_after c
48
+ end
49
+ end
50
+
51
+ def case_before(c)
52
+ # implement each case before
53
+ end
54
+
55
+ def case_after(c)
56
+ # implement each case after
57
+ end
58
+ end
59
+ end
60
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tbpgr_utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.79
4
+ version: 0.0.80
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-03-27 00:00:00.000000000 Z
12
+ date: 2014-03-28 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
16
- requirement: &22822560 !ruby/object:Gem::Requirement
16
+ requirement: &25354584 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 4.0.1
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *22822560
24
+ version_requirements: *25354584
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: bundler
27
- requirement: &22822272 !ruby/object:Gem::Requirement
27
+ requirement: &25354296 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '1.3'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *22822272
35
+ version_requirements: *25354296
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- requirement: &22822044 !ruby/object:Gem::Requirement
38
+ requirement: &25354068 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *22822044
46
+ version_requirements: *25354068
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rspec
49
- requirement: &22821720 !ruby/object:Gem::Requirement
49
+ requirement: &3812952 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 2.14.1
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *22821720
57
+ version_requirements: *3812952
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: simplecov
60
- requirement: &22821420 !ruby/object:Gem::Requirement
60
+ requirement: &3847428 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: 0.8.2
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *22821420
68
+ version_requirements: *3847428
69
69
  description: Utilities
70
70
  email:
71
71
  - tbpgr@tbpgr.jp
@@ -148,6 +148,7 @@ files:
148
148
  - lib/open_classes/numeric/dice_back.rb
149
149
  - lib/open_classes/numeric/dozen.rb
150
150
  - lib/open_classes/numeric/is_ascii.rb
151
+ - lib/open_classes/numeric/to_binary_table.rb
151
152
  - lib/open_classes/object.rb
152
153
  - lib/open_classes/object/any_of.rb
153
154
  - lib/open_classes/object/boolean.rb
@@ -241,6 +242,7 @@ files:
241
242
  - spec/open_classes/numeric/dice_back_spec.rb
242
243
  - spec/open_classes/numeric/dozen_spec.rb
243
244
  - spec/open_classes/numeric/is_ascii_spec.rb
245
+ - spec/open_classes/numeric/to_binary_table_spec.rb
244
246
  - spec/open_classes/object/any_of_spec.rb
245
247
  - spec/open_classes/object/boolean_spec.rb
246
248
  - spec/open_classes/object/guard_spec.rb
@@ -355,6 +357,7 @@ test_files:
355
357
  - spec/open_classes/numeric/dice_back_spec.rb
356
358
  - spec/open_classes/numeric/dozen_spec.rb
357
359
  - spec/open_classes/numeric/is_ascii_spec.rb
360
+ - spec/open_classes/numeric/to_binary_table_spec.rb
358
361
  - spec/open_classes/object/any_of_spec.rb
359
362
  - spec/open_classes/object/boolean_spec.rb
360
363
  - spec/open_classes/object/guard_spec.rb