gsm_encoder 0.1.5 → 0.1.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/gsm_encoder.rb +2 -11
  3. metadata +7 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1f714afc19eab777646d3901fd555673bd35f2fc
4
- data.tar.gz: 34bdd8548d11be5ce085e6a6f933a27eea311b7e
3
+ metadata.gz: cc5e53ca18eacc9115c7395a5f6c833f22571d19
4
+ data.tar.gz: eab20ccf00096deef3577367472e87ae88dfa6c0
5
5
  SHA512:
6
- metadata.gz: aaefbcb9d51481a45945bd9a813d69afa702b69eb5b1133098345e91df692f05d3cfd69215b85d485fd8780e9983c65d31d2ac436a0004e6ab0ad01a3fefe0c9
7
- data.tar.gz: e54b37b0edb6abf06cd6c725c4bba5bce500b07d9b6cdb878d50fdaca01ead3b3d3884a20f8ed66a31c820569a0fc435afa9b462178660ec1e6ee929500c415f
6
+ metadata.gz: afd5459dc5be3e784c6b691d1ab6e6600cc0f333965cd1ad87b068a28787b98c92abc75534078f60e79e37506c0d8d2cbe5afe940032115949733593e71ba814
7
+ data.tar.gz: 088b1bbe74116558fd69645a61f8a4bc8df9f7f501f893071f733165002c6774ef6f6a30502ed728b4b9e9a1b3604623577c4abec30080b70bf331b3fc443c9f
@@ -48,7 +48,7 @@ module GSMEncoder
48
48
  0, 0, 0, 0, 0, 'ú', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
49
49
  ]
50
50
 
51
- CHARS = CHAR_TABLE + EXT_CHAR_TABLE.select {|c| c != 0}.join
51
+ REGEX = /\A[ -_a-~#{Regexp.escape(CHAR_TABLE + EXT_CHAR_TABLE.select {|c| c != 0}.join)}]*\Z/
52
52
 
53
53
  # Verifies that this charset can represent every character in the Ruby
54
54
  # String.
@@ -56,16 +56,7 @@ module GSMEncoder
56
56
  # @return True if the charset can represent every character in the Ruby
57
57
  # String, otherwise false.
58
58
  def can_encode?(str)
59
- return true if !str
60
-
61
- str.each_char do |c|
62
- # simple range checks for most common characters (' '..'_') or ('a'..'~')
63
- b = c.getbyte(0)
64
- unless b >= 0x20 && b <= 0x5F || b >= 0x61 && b <= 0x7E || CHARS.include?(c)
65
- return false
66
- end
67
- end
68
- true
59
+ !str || !!(REGEX =~ str)
69
60
  end
70
61
 
71
62
  def encode(str, replace_char=nil)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gsm_encoder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yury Korolev
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-03-26 00:00:00.000000000 Z
12
+ date: 2014-03-18 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: GSMEncoder encodes and decodes Ruby Strings to and from the SMS default
15
15
  alphabet. It also supports the default extension table. The default alphabet and
@@ -21,9 +21,9 @@ executables: []
21
21
  extensions: []
22
22
  extra_rdoc_files: []
23
23
  files:
24
- - lib/gsm_encoder.rb
25
24
  - README.md
26
- homepage: http://github.com/boowebb/gsm_encoder
25
+ - lib/gsm_encoder.rb
26
+ homepage: http://github.com/yury/gsm_encoder
27
27
  licenses: []
28
28
  metadata: {}
29
29
  post_install_message:
@@ -32,17 +32,17 @@ require_paths:
32
32
  - lib
33
33
  required_ruby_version: !ruby/object:Gem::Requirement
34
34
  requirements:
35
- - - '>='
35
+ - - ">="
36
36
  - !ruby/object:Gem::Version
37
37
  version: '0'
38
38
  required_rubygems_version: !ruby/object:Gem::Requirement
39
39
  requirements:
40
- - - '>='
40
+ - - ">="
41
41
  - !ruby/object:Gem::Version
42
42
  version: 1.3.6
43
43
  requirements: []
44
44
  rubyforge_project:
45
- rubygems_version: 2.0.0
45
+ rubygems_version: 2.2.0
46
46
  signing_key:
47
47
  specification_version: 4
48
48
  summary: ruby GSM 03.38 encoder/decoder