character_set 1.2.0-java → 1.3.0-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/.gitattributes +3 -0
  3. data/.travis.yml +1 -0
  4. data/BENCHMARK.md +51 -15
  5. data/CHANGELOG.md +20 -0
  6. data/README.md +24 -8
  7. data/Rakefile +20 -18
  8. data/benchmarks/count_in.rb +13 -0
  9. data/benchmarks/delete_in.rb +1 -1
  10. data/benchmarks/scan.rb +13 -0
  11. data/benchmarks/shared.rb +1 -0
  12. data/benchmarks/z_add.rb +12 -0
  13. data/benchmarks/z_delete.rb +12 -0
  14. data/benchmarks/z_merge.rb +15 -0
  15. data/benchmarks/z_minmax.rb +12 -0
  16. data/bin/console +2 -0
  17. data/character_set.gemspec +2 -0
  18. data/ext/character_set/character_set.c +963 -413
  19. data/ext/character_set/unicode_casefold_table.h.tmpl +11 -0
  20. data/lib/character_set/core_ext/string_ext.rb +2 -0
  21. data/lib/character_set/expression_converter.rb +21 -24
  22. data/lib/character_set/predefined_sets.rb +25 -260
  23. data/lib/character_set/predefined_sets/any.cps +1 -0
  24. data/lib/character_set/predefined_sets/ascii.cps +1 -0
  25. data/lib/character_set/predefined_sets/ascii_alnum.cps +3 -0
  26. data/lib/character_set/predefined_sets/ascii_letter.cps +2 -0
  27. data/lib/character_set/predefined_sets/assigned.cps +666 -0
  28. data/lib/character_set/predefined_sets/bmp.cps +2 -0
  29. data/lib/character_set/predefined_sets/crypt.cps +2 -0
  30. data/lib/character_set/predefined_sets/emoji.cps +151 -0
  31. data/lib/character_set/predefined_sets/newline.cps +3 -0
  32. data/lib/character_set/predefined_sets/surrogate.cps +1 -0
  33. data/lib/character_set/predefined_sets/unicode.cps +2 -0
  34. data/lib/character_set/predefined_sets/url_fragment.cps +8 -0
  35. data/lib/character_set/predefined_sets/url_host.cps +10 -0
  36. data/lib/character_set/predefined_sets/url_path.cps +7 -0
  37. data/lib/character_set/predefined_sets/url_query.cps +8 -0
  38. data/lib/character_set/predefined_sets/whitespace.cps +10 -0
  39. data/lib/character_set/ruby_fallback.rb +0 -2
  40. data/lib/character_set/ruby_fallback/character_set_methods.rb +52 -4
  41. data/lib/character_set/ruby_fallback/set_methods.rb +2 -2
  42. data/lib/character_set/shared_methods.rb +51 -40
  43. data/lib/character_set/version.rb +1 -1
  44. metadata +54 -3
  45. data/lib/character_set/ruby_fallback/plane_methods.rb +0 -27
@@ -1,3 +1,3 @@
1
1
  class CharacterSet
2
- VERSION = '1.2.0'
2
+ VERSION = '1.3.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: character_set
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.3.0
5
5
  platform: java
6
6
  authors:
7
7
  - Janosch Müller
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-04-02 00:00:00.000000000 Z
11
+ date: 2019-05-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: benchmark-ips
@@ -24,6 +24,34 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '2.7'
27
+ - !ruby/object:Gem::Dependency
28
+ name: codecov
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '0.1'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '0.1'
41
+ - !ruby/object:Gem::Dependency
42
+ name: get_process_mem
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 0.2.3
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 0.2.3
27
55
  - !ruby/object:Gem::Dependency
28
56
  name: rake
29
57
  requirement: !ruby/object:Gem::Requirement
@@ -129,6 +157,7 @@ executables: []
129
157
  extensions: []
130
158
  extra_rdoc_files: []
131
159
  files:
160
+ - ".gitattributes"
132
161
  - ".gitignore"
133
162
  - ".rspec"
134
163
  - ".travis.yml"
@@ -138,17 +167,24 @@ files:
138
167
  - LICENSE.txt
139
168
  - README.md
140
169
  - Rakefile
170
+ - benchmarks/count_in.rb
141
171
  - benchmarks/cover.rb
142
172
  - benchmarks/delete_in.rb
143
173
  - benchmarks/keep_in.rb
174
+ - benchmarks/scan.rb
144
175
  - benchmarks/shared.rb
145
176
  - benchmarks/used_by.rb
177
+ - benchmarks/z_add.rb
178
+ - benchmarks/z_delete.rb
179
+ - benchmarks/z_merge.rb
180
+ - benchmarks/z_minmax.rb
146
181
  - bin/console
147
182
  - bin/setup
148
183
  - character_set.gemspec
149
184
  - ext/character_set/character_set.c
150
185
  - ext/character_set/extconf.rb
151
186
  - ext/character_set/unicode_casefold_table.h
187
+ - ext/character_set/unicode_casefold_table.h.tmpl
152
188
  - lib/character_set.rb
153
189
  - lib/character_set/character.rb
154
190
  - lib/character_set/core_ext.rb
@@ -157,10 +193,25 @@ files:
157
193
  - lib/character_set/expression_converter.rb
158
194
  - lib/character_set/parser.rb
159
195
  - lib/character_set/predefined_sets.rb
196
+ - lib/character_set/predefined_sets/any.cps
197
+ - lib/character_set/predefined_sets/ascii.cps
198
+ - lib/character_set/predefined_sets/ascii_alnum.cps
199
+ - lib/character_set/predefined_sets/ascii_letter.cps
200
+ - lib/character_set/predefined_sets/assigned.cps
201
+ - lib/character_set/predefined_sets/bmp.cps
202
+ - lib/character_set/predefined_sets/crypt.cps
203
+ - lib/character_set/predefined_sets/emoji.cps
204
+ - lib/character_set/predefined_sets/newline.cps
205
+ - lib/character_set/predefined_sets/surrogate.cps
206
+ - lib/character_set/predefined_sets/unicode.cps
207
+ - lib/character_set/predefined_sets/url_fragment.cps
208
+ - lib/character_set/predefined_sets/url_host.cps
209
+ - lib/character_set/predefined_sets/url_path.cps
210
+ - lib/character_set/predefined_sets/url_query.cps
211
+ - lib/character_set/predefined_sets/whitespace.cps
160
212
  - lib/character_set/pure.rb
161
213
  - lib/character_set/ruby_fallback.rb
162
214
  - lib/character_set/ruby_fallback/character_set_methods.rb
163
- - lib/character_set/ruby_fallback/plane_methods.rb
164
215
  - lib/character_set/ruby_fallback/set_methods.rb
165
216
  - lib/character_set/set_method_adapters.rb
166
217
  - lib/character_set/shared_methods.rb
@@ -1,27 +0,0 @@
1
- class CharacterSet
2
- module RubyFallback
3
- module PlaneMethods
4
- def bmp_part
5
- dup.keep_if { |cp| cp < 0x10000 }
6
- end
7
-
8
- def astral_part
9
- dup.keep_if { |cp| cp >= 0x10000 }
10
- end
11
-
12
- def planes
13
- plane_set = {}
14
- plane_size = 0x10000.to_f
15
- each do |cp|
16
- plane = (cp / plane_size).floor
17
- plane_set[plane] = true
18
- end
19
- plane_set.keys
20
- end
21
-
22
- def member_in_plane?(num)
23
- ((num * 0x10000)...((num + 1) * 0x10000)).any? { |cp| include?(cp) }
24
- end
25
- end
26
- end
27
- end