coder 0.3.0 → 0.4.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.
- checksums.yaml +7 -0
- data/.travis.yml +1 -0
- data/lib/coder/cleaner/builtin.rb +1 -5
- data/lib/coder/cleaner/java.rb +1 -1
- data/lib/coder/cleaner/simple/byte_buffer.rb +1 -1
- data/lib/coder/cleaner/simple/encodings.rb +10 -2
- data/lib/coder/version.rb +1 -1
- metadata +9 -17
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 05008d6a5f6e5b73c5942a0f93221000d1b8e3b6
|
4
|
+
data.tar.gz: fecd70dbfe2e5718a17e55e82ec69cff626a12ea
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 553714ab9e39480878b5aa61f7014adccfae4625c65006612f6cd9fd5a2622a91778307accde08747b1d031a55b01812623165b380749f246a77d22de5a39a1b
|
7
|
+
data.tar.gz: f92c33188b5d5317030ebf7f4a68abfb232e07ac1fcd5fb90efcfa50afc6bba07680476dd3ce9fdcff920cfbc233740915a291939e3d0a49fb535f11dbb5058e
|
data/.travis.yml
CHANGED
@@ -28,7 +28,7 @@ module Coder
|
|
28
28
|
|
29
29
|
def initialize(encoding)
|
30
30
|
@encoding = encoding.to_s.upcase
|
31
|
-
@dummy = @encoding == 'UTF-8' ? 'UTF-16BE' : 'UTF-8'
|
31
|
+
@dummy = @encoding == 'UTF-8' ? 'UTF-16BE' : 'UTF-8'
|
32
32
|
@dummy ||= @encoding
|
33
33
|
|
34
34
|
check_encoding
|
@@ -47,10 +47,6 @@ module Coder
|
|
47
47
|
return if self.class.supports? @encoding
|
48
48
|
raise Coder::InvalidEncoding, "unknown encoding name - #{@encoding}"
|
49
49
|
end
|
50
|
-
|
51
|
-
def needs_dummy?
|
52
|
-
RUBY_VERSION < '2.0'
|
53
|
-
end
|
54
50
|
end
|
55
51
|
end
|
56
52
|
end
|
data/lib/coder/cleaner/java.rb
CHANGED
@@ -33,7 +33,7 @@ module Coder
|
|
33
33
|
buffer = ::Java::JavaNio::ByteBuffer.wrap(str.to_java_bytes)
|
34
34
|
string = @decoder.decode(buffer).to_s
|
35
35
|
Coder.force_encoding!(string, @encoding).gsub(@nullbyte, '')
|
36
|
-
rescue Java::JavaLang::RuntimeException => e
|
36
|
+
rescue ::Java::JavaLang::RuntimeException => e
|
37
37
|
raise Coder::Error, e.message, e.backtrace
|
38
38
|
end
|
39
39
|
end
|
@@ -14,7 +14,7 @@ module Coder
|
|
14
14
|
clear_buffer
|
15
15
|
elsif encoding.single_byte? byte, buffer
|
16
16
|
add(byte)
|
17
|
-
elsif encoding.
|
17
|
+
elsif encoding.multibyte_body? byte, buffer
|
18
18
|
fill_buffer(byte)
|
19
19
|
elsif encoding.multibyte_start? byte, buffer
|
20
20
|
start_buffer(byte, encoding.multibyte_size(byte, buffer))
|
@@ -19,11 +19,15 @@ module Coder
|
|
19
19
|
input.between? 1, 127
|
20
20
|
end
|
21
21
|
|
22
|
+
def multibyte?(input, buffered)
|
23
|
+
input.between? 128, 244
|
24
|
+
end
|
25
|
+
|
22
26
|
def multibyte_start?(input, buffered)
|
23
27
|
input.between? 192, 244
|
24
28
|
end
|
25
29
|
|
26
|
-
def
|
30
|
+
def multibyte_body?(input, buffered)
|
27
31
|
input.between? 128, 191
|
28
32
|
end
|
29
33
|
|
@@ -52,11 +56,15 @@ module Coder
|
|
52
56
|
false
|
53
57
|
end
|
54
58
|
|
59
|
+
def multibyte?(input, buffered)
|
60
|
+
true
|
61
|
+
end
|
62
|
+
|
55
63
|
def multibyte_start?(input, buffered)
|
56
64
|
buffered.size % multibyte_size == 0
|
57
65
|
end
|
58
66
|
|
59
|
-
def
|
67
|
+
def multibyte_body?(input, buffered)
|
60
68
|
not multibyte_start? input, buffered
|
61
69
|
end
|
62
70
|
|
data/lib/coder/version.rb
CHANGED
metadata
CHANGED
@@ -1,20 +1,18 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: coder
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.4.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Konstantin Haase
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2013-06-10 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: rspec
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
17
|
- - ~>
|
20
18
|
- !ruby/object:Gem::Version
|
@@ -22,7 +20,6 @@ dependencies:
|
|
22
20
|
type: :development
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
24
|
- - ~>
|
28
25
|
- !ruby/object:Gem::Version
|
@@ -30,7 +27,6 @@ dependencies:
|
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: activesupport
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
31
|
- - ~>
|
36
32
|
- !ruby/object:Gem::Version
|
@@ -38,7 +34,6 @@ dependencies:
|
|
38
34
|
type: :development
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
38
|
- - ~>
|
44
39
|
- !ruby/object:Gem::Version
|
@@ -46,17 +41,15 @@ dependencies:
|
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: rake
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- -
|
45
|
+
- - '>='
|
52
46
|
- !ruby/object:Gem::Version
|
53
47
|
version: '0'
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- -
|
52
|
+
- - '>='
|
60
53
|
- !ruby/object:Gem::Version
|
61
54
|
version: '0'
|
62
55
|
description: handle encodings, no matter what
|
@@ -93,27 +86,26 @@ files:
|
|
93
86
|
- spec/support/clean_helpers.rb
|
94
87
|
homepage: http://github.com/rkh/coder
|
95
88
|
licenses: []
|
89
|
+
metadata: {}
|
96
90
|
post_install_message:
|
97
91
|
rdoc_options: []
|
98
92
|
require_paths:
|
99
93
|
- lib
|
100
94
|
required_ruby_version: !ruby/object:Gem::Requirement
|
101
|
-
none: false
|
102
95
|
requirements:
|
103
|
-
- -
|
96
|
+
- - '>='
|
104
97
|
- !ruby/object:Gem::Version
|
105
98
|
version: '0'
|
106
99
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
107
|
-
none: false
|
108
100
|
requirements:
|
109
|
-
- -
|
101
|
+
- - '>='
|
110
102
|
- !ruby/object:Gem::Version
|
111
103
|
version: '0'
|
112
104
|
requirements: []
|
113
105
|
rubyforge_project:
|
114
|
-
rubygems_version:
|
106
|
+
rubygems_version: 2.0.2
|
115
107
|
signing_key:
|
116
|
-
specification_version:
|
108
|
+
specification_version: 4
|
117
109
|
summary: library to handle encodings
|
118
110
|
test_files:
|
119
111
|
- spec/coder/cleaner_spec.rb
|