numformat 0.1.0

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.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/numformat.rb +24 -0
  3. metadata +44 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: a06c3b6f8cb930cd6726584c146130972d871284
4
+ data.tar.gz: fc75fb520571c92d9c30d41b5705459f896ea227
5
+ SHA512:
6
+ metadata.gz: 2db448e926b7b90ea32a51ad790f4cbac12457f3a7eda8152d92bd820f62611c166c9494ec6847daef1e0173b802af23f686ad1304c3da31c4ac0b79a83425b2
7
+ data.tar.gz: f513c19ce962dab35d131ed6bdbe104ffdb1ce06245be587d4bffbababfc1281c8efc55f01a23d3975485d8825577bdc31e868c04450dc40479f5248f07f9371
data/lib/numformat.rb ADDED
@@ -0,0 +1,24 @@
1
+ # f = NumberFormat.new
2
+ # f.format(13_876) => "13K"
3
+ # f.format(12_485_485) => "12M"
4
+ # f.format(234) => "234"
5
+
6
+ class NumFormat
7
+ def format(number)
8
+ return number.to_s if number < 1000
9
+ return thousands_to_human(number) if number < 1_000_000
10
+ millions_to_human(number)
11
+ end
12
+
13
+ private
14
+
15
+ def thousands_to_human(number)
16
+ n = number % 1000 == 0 ? (number / 1_000) : (number / 1_000.0).round(1)
17
+ "#{n}K"
18
+ end
19
+
20
+ def millions_to_human(number)
21
+ n = number % 1000000 == 0 ? (number / 1_000_000) : (number / 1_000_000.0).round(1)
22
+ "#{n}M"
23
+ end
24
+ end
metadata ADDED
@@ -0,0 +1,44 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: numformat
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Make It Real
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-10-08 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: A simple gem to format a numbers
14
+ email: sezama08@gmail.com
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - lib/numformat.rb
20
+ homepage: http://github.com/mardiniii/numformat
21
+ licenses:
22
+ - MIT
23
+ metadata: {}
24
+ post_install_message:
25
+ rdoc_options: []
26
+ require_paths:
27
+ - lib
28
+ required_ruby_version: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ required_rubygems_version: !ruby/object:Gem::Requirement
34
+ requirements:
35
+ - - ">="
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ requirements: []
39
+ rubyforge_project:
40
+ rubygems_version: 2.5.1
41
+ signing_key:
42
+ specification_version: 4
43
+ summary: A simple gem to format a numbers
44
+ test_files: []