regexp_parser 0.5.0 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +242 -0
- data/Gemfile +1 -0
- data/README.md +21 -17
- data/Rakefile +31 -0
- data/lib/regexp_parser/expression.rb +11 -9
- data/lib/regexp_parser/expression/classes/alternation.rb +5 -28
- data/lib/regexp_parser/expression/classes/backref.rb +21 -16
- data/lib/regexp_parser/expression/classes/escape.rb +81 -10
- data/lib/regexp_parser/expression/classes/group.rb +20 -20
- data/lib/regexp_parser/expression/classes/{character_class.rb → posix_class.rb} +2 -2
- data/lib/regexp_parser/expression/classes/property.rb +6 -0
- data/lib/regexp_parser/expression/classes/set.rb +10 -93
- data/lib/regexp_parser/expression/classes/set/intersection.rb +9 -0
- data/lib/regexp_parser/expression/classes/set/range.rb +23 -0
- data/lib/regexp_parser/expression/methods/strfregexp.rb +6 -4
- data/lib/regexp_parser/expression/methods/tests.rb +4 -14
- data/lib/regexp_parser/expression/methods/traverse.rb +1 -1
- data/lib/regexp_parser/expression/quantifier.rb +3 -4
- data/lib/regexp_parser/expression/sequence_operation.rb +34 -0
- data/lib/regexp_parser/expression/subexpression.rb +6 -10
- data/lib/regexp_parser/lexer.rb +13 -17
- data/lib/regexp_parser/parser.rb +170 -116
- data/lib/regexp_parser/scanner.rb +952 -2431
- data/lib/regexp_parser/scanner/char_type.rl +31 -0
- data/lib/regexp_parser/scanner/properties/long.yml +561 -0
- data/lib/regexp_parser/scanner/properties/short.yml +225 -0
- data/lib/regexp_parser/scanner/property.rl +7 -806
- data/lib/regexp_parser/scanner/scanner.rl +112 -154
- data/lib/regexp_parser/syntax/base.rb +4 -4
- data/lib/regexp_parser/syntax/tokens.rb +1 -0
- data/lib/regexp_parser/syntax/tokens/backref.rb +2 -2
- data/lib/regexp_parser/syntax/tokens/character_set.rb +3 -38
- data/lib/regexp_parser/syntax/tokens/escape.rb +2 -3
- data/lib/regexp_parser/syntax/tokens/group.rb +5 -4
- data/lib/regexp_parser/syntax/tokens/{character_class.rb → posix_class.rb} +5 -5
- data/lib/regexp_parser/syntax/tokens/unicode_property.rb +519 -266
- data/lib/regexp_parser/syntax/versions/1.8.6.rb +2 -4
- data/lib/regexp_parser/syntax/versions/1.9.1.rb +4 -10
- data/lib/regexp_parser/syntax/versions/2.0.0.rb +0 -2
- data/lib/regexp_parser/syntax/versions/2.4.1.rb +1 -1
- data/lib/regexp_parser/version.rb +1 -1
- data/regexp_parser.gemspec +2 -1
- data/test/expression/test_base.rb +2 -1
- data/test/expression/test_clone.rb +0 -57
- data/test/expression/test_set.rb +31 -8
- data/test/expression/test_strfregexp.rb +13 -4
- data/test/expression/test_subexpression.rb +25 -0
- data/test/expression/test_traverse.rb +25 -25
- data/test/helpers.rb +1 -0
- data/test/lexer/test_all.rb +1 -1
- data/test/lexer/test_conditionals.rb +9 -7
- data/test/lexer/test_nesting.rb +39 -21
- data/test/lexer/test_refcalls.rb +4 -4
- data/test/parser/set/test_intersections.rb +127 -0
- data/test/parser/set/test_ranges.rb +111 -0
- data/test/parser/test_all.rb +4 -1
- data/test/parser/test_escapes.rb +41 -9
- data/test/parser/test_groups.rb +22 -3
- data/test/parser/test_posix_classes.rb +27 -0
- data/test/parser/test_properties.rb +17 -290
- data/test/parser/test_refcalls.rb +66 -26
- data/test/parser/test_sets.rb +132 -129
- data/test/scanner/test_all.rb +1 -7
- data/test/scanner/test_conditionals.rb +16 -16
- data/test/scanner/test_errors.rb +0 -30
- data/test/scanner/test_escapes.rb +1 -2
- data/test/scanner/test_free_space.rb +28 -28
- data/test/scanner/test_groups.rb +35 -35
- data/test/scanner/test_meta.rb +1 -1
- data/test/scanner/test_properties.rb +87 -114
- data/test/scanner/test_refcalls.rb +18 -18
- data/test/scanner/test_scripts.rb +19 -351
- data/test/scanner/test_sets.rb +87 -60
- data/test/scanner/test_unicode_blocks.rb +4 -105
- data/test/support/warning_extractor.rb +1 -1
- data/test/syntax/test_syntax.rb +7 -0
- data/test/syntax/versions/test_1.8.rb +2 -4
- metadata +17 -7
- data/ChangeLog +0 -325
- data/test/scanner/test_emojis.rb +0 -31
@@ -3,111 +3,10 @@ require File.expand_path("../../helpers", __FILE__)
|
|
3
3
|
class ScannerUnicodeBlocks < Test::Unit::TestCase
|
4
4
|
|
5
5
|
tests = {
|
6
|
-
'
|
7
|
-
'
|
8
|
-
'
|
9
|
-
'
|
10
|
-
'InArmenian' => :block_inarmenian,
|
11
|
-
'InArrows' => :block_inarrows,
|
12
|
-
'InBasic_Latin' => :block_inbasic_latin,
|
13
|
-
'InBengali' => :block_inbengali,
|
14
|
-
'InBlock_Elements' => :block_inblock_elements,
|
15
|
-
'InBopomofo_Extended' => :block_inbopomofo_extended,
|
16
|
-
'InBopomofo' => :block_inbopomofo,
|
17
|
-
'InBox_Drawing' => :block_inbox_drawing,
|
18
|
-
'InBraille_Patterns' => :block_inbraille_patterns,
|
19
|
-
'InBuhid' => :block_inbuhid,
|
20
|
-
'InCJK_Compatibility_Forms' => :block_incjk_compatibility_forms,
|
21
|
-
'InCJK_Compatibility_Ideographs' => :block_incjk_compatibility_ideographs,
|
22
|
-
'InCJK_Compatibility' => :block_incjk_compatibility,
|
23
|
-
'InCJK_Radicals_Supplement' => :block_incjk_radicals_supplement,
|
24
|
-
'InCJK_Symbols_and_Punctuation' => :block_incjk_symbols_and_punctuation,
|
25
|
-
'InCJK_Unified_Ideographs_Extension_A' => :block_incjk_unified_ideographs_extension_a,
|
26
|
-
'InCJK_Unified_Ideographs' => :block_incjk_unified_ideographs,
|
27
|
-
'InCherokee' => :block_incherokee,
|
28
|
-
'InCombining_Diacritical_Marks_for_Symbols' => :block_incombining_diacritical_marks_for_symbols,
|
29
|
-
'InCombining_Diacritical_Marks' => :block_incombining_diacritical_marks,
|
30
|
-
'InCombining_Half_Marks' => :block_incombining_half_marks,
|
31
|
-
'InControl_Pictures' => :block_incontrol_pictures,
|
32
|
-
'InCurrency_Symbols' => :block_incurrency_symbols,
|
33
|
-
'InCyrillic_Supplement' => :block_incyrillic_supplement,
|
34
|
-
'InCyrillic' => :block_incyrillic,
|
35
|
-
'InDevanagari' => :block_indevanagari,
|
36
|
-
'InDingbats' => :block_indingbats,
|
37
|
-
'InEnclosed_Alphanumerics' => :block_inenclosed_alphanumerics,
|
38
|
-
'InEnclosed_CJK_Letters_and_Months' => :block_inenclosed_cjk_letters_and_months,
|
39
|
-
'InEthiopic' => :block_inethiopic,
|
40
|
-
'InGeneral_Punctuation' => :block_ingeneral_punctuation,
|
41
|
-
'InGeometric_Shapes' => :block_ingeometric_shapes,
|
42
|
-
'InGeorgian' => :block_ingeorgian,
|
43
|
-
'InGreek_Extended' => :block_ingreek_extended,
|
44
|
-
'InGreek_and_Coptic' => :block_ingreek_and_coptic,
|
45
|
-
'InGujarati' => :block_ingujarati,
|
46
|
-
'InGurmukhi' => :block_ingurmukhi,
|
47
|
-
'InHalfwidth_and_Fullwidth_Forms' => :block_inhalfwidth_and_fullwidth_forms,
|
48
|
-
'InHangul_Compatibility_Jamo' => :block_inhangul_compatibility_jamo,
|
49
|
-
'InHangul_Jamo' => :block_inhangul_jamo,
|
50
|
-
'InHangul_Syllables' => :block_inhangul_syllables,
|
51
|
-
'InHanunoo' => :block_inhanunoo,
|
52
|
-
'InHebrew' => :block_inhebrew,
|
53
|
-
'InHigh_Private_Use_Surrogates' => :block_inhigh_private_use_surrogates,
|
54
|
-
'InHigh_Surrogates' => :block_inhigh_surrogates,
|
55
|
-
'InHiragana' => :block_inhiragana,
|
56
|
-
'InIPA_Extensions' => :block_inipa_extensions,
|
57
|
-
'InIdeographic_Description_Characters' => :block_inideographic_description_characters,
|
58
|
-
'InKanbun' => :block_inkanbun,
|
59
|
-
'InKangxi_Radicals' => :block_inkangxi_radicals,
|
60
|
-
'InKannada' => :block_inkannada,
|
61
|
-
'InKatakana_Phonetic_Extensions' => :block_inkatakana_phonetic_extensions,
|
62
|
-
'InKatakana' => :block_inkatakana,
|
63
|
-
'InKhmer_Symbols' => :block_inkhmer_symbols,
|
64
|
-
'InKhmer' => :block_inkhmer,
|
65
|
-
'InLao' => :block_inlao,
|
66
|
-
'InLatin-1_Supplement' => :block_inlatin_1_supplement,
|
67
|
-
'InLatin_Extended-A' => :block_inlatin_extended_a,
|
68
|
-
'InLatin_Extended-B' => :block_inlatin_extended_b,
|
69
|
-
'InLatin_Extended_Additional' => :block_inlatin_extended_additional,
|
70
|
-
'InLetterlike_Symbols' => :block_inletterlike_symbols,
|
71
|
-
'InLimbu' => :block_inlimbu,
|
72
|
-
'InLow_Surrogates' => :block_inlow_surrogates,
|
73
|
-
'InMalayalam' => :block_inmalayalam,
|
74
|
-
'InMathematical_Operators' => :block_inmathematical_operators,
|
75
|
-
'InMiscellaneous_Mathematical_Symbols-A' => :block_inmiscellaneous_mathematical_symbols_a,
|
76
|
-
'InMiscellaneous_Mathematical_Symbols-B' => :block_inmiscellaneous_mathematical_symbols_b,
|
77
|
-
'InMiscellaneous_Symbols_and_Arrows' => :block_inmiscellaneous_symbols_and_arrows,
|
78
|
-
'InMiscellaneous_Symbols' => :block_inmiscellaneous_symbols,
|
79
|
-
'InMiscellaneous_Technical' => :block_inmiscellaneous_technical,
|
80
|
-
'InMongolian' => :block_inmongolian,
|
81
|
-
'InMyanmar' => :block_inmyanmar,
|
82
|
-
'InNumber_Forms' => :block_innumber_forms,
|
83
|
-
'InOgham' => :block_inogham,
|
84
|
-
'InOptical_Character_Recognition' => :block_inoptical_character_recognition,
|
85
|
-
'InOriya' => :block_inoriya,
|
86
|
-
'InPhonetic_Extensions' => :block_inphonetic_extensions,
|
87
|
-
'InPrivate_Use_Area' => :block_inprivate_use_area,
|
88
|
-
'InRunic' => :block_inrunic,
|
89
|
-
'InSinhala' => :block_insinhala,
|
90
|
-
'InSmall_Form_Variants' => :block_insmall_form_variants,
|
91
|
-
'InSpacing_Modifier_Letters' => :block_inspacing_modifier_letters,
|
92
|
-
'InSpecials' => :block_inspecials,
|
93
|
-
'InSuperscripts_and_Subscripts' => :block_insuperscripts_and_subscripts,
|
94
|
-
'InSupplemental_Arrows-A' => :block_insupplemental_arrows_a,
|
95
|
-
'InSupplemental_Arrows-B' => :block_insupplemental_arrows_b,
|
96
|
-
'InSupplemental_Mathematical_Operators' => :block_insupplemental_mathematical_operators,
|
97
|
-
'InSyriac' => :block_insyriac,
|
98
|
-
'InTagalog' => :block_intagalog,
|
99
|
-
'InTagbanwa' => :block_intagbanwa,
|
100
|
-
'InTai_Le' => :block_intai_le,
|
101
|
-
'InTamil' => :block_intamil,
|
102
|
-
'InTelugu' => :block_intelugu,
|
103
|
-
'InThaana' => :block_inthaana,
|
104
|
-
'InThai' => :block_inthai,
|
105
|
-
'InTibetan' => :block_intibetan,
|
106
|
-
'InUnified_Canadian_Aboriginal_Syllabics' => :block_inunified_canadian_aboriginal_syllabics,
|
107
|
-
'InVariation_Selectors' => :block_invariation_selectors,
|
108
|
-
'InYi_Radicals' => :block_inyi_radicals,
|
109
|
-
'InYi_Syllables' => :block_inyi_syllables,
|
110
|
-
'InYijing_Hexagram_Symbols' => :block_inyijing_hexagram_symbols
|
6
|
+
'InArabic' => :in_arabic,
|
7
|
+
'InCJK_Unified_Ideographs_Extension_A' => :in_cjk_unified_ideographs_extension_a,
|
8
|
+
'In Letterlike Symbols' => :in_letterlike_symbols,
|
9
|
+
'InMiscellaneous_Mathematical_Symbols-A' => :in_miscellaneous_mathematical_symbols_a,
|
111
10
|
}
|
112
11
|
|
113
12
|
tests.each_with_index do |(property, token), count|
|
data/test/syntax/test_syntax.rb
CHANGED
@@ -13,6 +13,13 @@ class TestSyntax < Test::Unit::TestCase
|
|
13
13
|
Regexp::Syntax.new('ruby/1.9.3')
|
14
14
|
end
|
15
15
|
|
16
|
+
def test_syntax_new_any
|
17
|
+
assert_instance_of Regexp::Syntax::Any,
|
18
|
+
Regexp::Syntax.new('any')
|
19
|
+
assert_instance_of Regexp::Syntax::Any,
|
20
|
+
Regexp::Syntax.new('*')
|
21
|
+
end
|
22
|
+
|
16
23
|
def test_syntax_not_implemented
|
17
24
|
assert_raise( Regexp::Syntax::NotImplementedError ) {
|
18
25
|
RP.parse('\p{alpha}', 'ruby/1.8')
|
@@ -12,7 +12,7 @@ class TestSyntaxV1_8 < Test::Unit::TestCase
|
|
12
12
|
assertion: [Assertion::Lookahead].flatten,
|
13
13
|
backref: [:number],
|
14
14
|
escape: [Escape::All].flatten,
|
15
|
-
group: [Group::
|
15
|
+
group: [Group::V1_8_6].flatten,
|
16
16
|
quantifier: [
|
17
17
|
Quantifier::Greedy + Quantifier::Reluctant +
|
18
18
|
Quantifier::Interval + Quantifier::IntervalReluctant
|
@@ -28,9 +28,7 @@ class TestSyntaxV1_8 < Test::Unit::TestCase
|
|
28
28
|
|
29
29
|
quantifier: [
|
30
30
|
Quantifier::Possessive
|
31
|
-
].flatten
|
32
|
-
|
33
|
-
subset: nil
|
31
|
+
].flatten
|
34
32
|
},
|
35
33
|
}
|
36
34
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: regexp_parser
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ammar Ali
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-09-01 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: A library for tokenizing, lexing, and parsing Ruby regular expressions.
|
14
14
|
email:
|
@@ -17,7 +17,7 @@ executables: []
|
|
17
17
|
extensions: []
|
18
18
|
extra_rdoc_files: []
|
19
19
|
files:
|
20
|
-
-
|
20
|
+
- CHANGELOG.md
|
21
21
|
- Gemfile
|
22
22
|
- LICENSE
|
23
23
|
- README.md
|
@@ -27,26 +27,32 @@ files:
|
|
27
27
|
- lib/regexp_parser/expression/classes/alternation.rb
|
28
28
|
- lib/regexp_parser/expression/classes/anchor.rb
|
29
29
|
- lib/regexp_parser/expression/classes/backref.rb
|
30
|
-
- lib/regexp_parser/expression/classes/character_class.rb
|
31
30
|
- lib/regexp_parser/expression/classes/conditional.rb
|
32
31
|
- lib/regexp_parser/expression/classes/escape.rb
|
33
32
|
- lib/regexp_parser/expression/classes/free_space.rb
|
34
33
|
- lib/regexp_parser/expression/classes/group.rb
|
35
34
|
- lib/regexp_parser/expression/classes/keep.rb
|
36
35
|
- lib/regexp_parser/expression/classes/literal.rb
|
36
|
+
- lib/regexp_parser/expression/classes/posix_class.rb
|
37
37
|
- lib/regexp_parser/expression/classes/property.rb
|
38
38
|
- lib/regexp_parser/expression/classes/root.rb
|
39
39
|
- lib/regexp_parser/expression/classes/set.rb
|
40
|
+
- lib/regexp_parser/expression/classes/set/intersection.rb
|
41
|
+
- lib/regexp_parser/expression/classes/set/range.rb
|
40
42
|
- lib/regexp_parser/expression/classes/type.rb
|
41
43
|
- lib/regexp_parser/expression/methods/strfregexp.rb
|
42
44
|
- lib/regexp_parser/expression/methods/tests.rb
|
43
45
|
- lib/regexp_parser/expression/methods/traverse.rb
|
44
46
|
- lib/regexp_parser/expression/quantifier.rb
|
45
47
|
- lib/regexp_parser/expression/sequence.rb
|
48
|
+
- lib/regexp_parser/expression/sequence_operation.rb
|
46
49
|
- lib/regexp_parser/expression/subexpression.rb
|
47
50
|
- lib/regexp_parser/lexer.rb
|
48
51
|
- lib/regexp_parser/parser.rb
|
49
52
|
- lib/regexp_parser/scanner.rb
|
53
|
+
- lib/regexp_parser/scanner/char_type.rl
|
54
|
+
- lib/regexp_parser/scanner/properties/long.yml
|
55
|
+
- lib/regexp_parser/scanner/properties/short.yml
|
50
56
|
- lib/regexp_parser/scanner/property.rl
|
51
57
|
- lib/regexp_parser/scanner/scanner.rl
|
52
58
|
- lib/regexp_parser/syntax.rb
|
@@ -56,7 +62,6 @@ files:
|
|
56
62
|
- lib/regexp_parser/syntax/tokens/anchor.rb
|
57
63
|
- lib/regexp_parser/syntax/tokens/assertion.rb
|
58
64
|
- lib/regexp_parser/syntax/tokens/backref.rb
|
59
|
-
- lib/regexp_parser/syntax/tokens/character_class.rb
|
60
65
|
- lib/regexp_parser/syntax/tokens/character_set.rb
|
61
66
|
- lib/regexp_parser/syntax/tokens/character_type.rb
|
62
67
|
- lib/regexp_parser/syntax/tokens/conditional.rb
|
@@ -64,6 +69,7 @@ files:
|
|
64
69
|
- lib/regexp_parser/syntax/tokens/group.rb
|
65
70
|
- lib/regexp_parser/syntax/tokens/keep.rb
|
66
71
|
- lib/regexp_parser/syntax/tokens/meta.rb
|
72
|
+
- lib/regexp_parser/syntax/tokens/posix_class.rb
|
67
73
|
- lib/regexp_parser/syntax/tokens/quantifier.rb
|
68
74
|
- lib/regexp_parser/syntax/tokens/unicode_property.rb
|
69
75
|
- lib/regexp_parser/syntax/version_lookup.rb
|
@@ -99,6 +105,8 @@ files:
|
|
99
105
|
- test/lexer/test_literals.rb
|
100
106
|
- test/lexer/test_nesting.rb
|
101
107
|
- test/lexer/test_refcalls.rb
|
108
|
+
- test/parser/set/test_intersections.rb
|
109
|
+
- test/parser/set/test_ranges.rb
|
102
110
|
- test/parser/test_all.rb
|
103
111
|
- test/parser/test_alternation.rb
|
104
112
|
- test/parser/test_anchors.rb
|
@@ -108,6 +116,7 @@ files:
|
|
108
116
|
- test/parser/test_free_space.rb
|
109
117
|
- test/parser/test_groups.rb
|
110
118
|
- test/parser/test_keep.rb
|
119
|
+
- test/parser/test_posix_classes.rb
|
111
120
|
- test/parser/test_properties.rb
|
112
121
|
- test/parser/test_quantifiers.rb
|
113
122
|
- test/parser/test_refcalls.rb
|
@@ -116,7 +125,6 @@ files:
|
|
116
125
|
- test/scanner/test_all.rb
|
117
126
|
- test/scanner/test_anchors.rb
|
118
127
|
- test/scanner/test_conditionals.rb
|
119
|
-
- test/scanner/test_emojis.rb
|
120
128
|
- test/scanner/test_errors.rb
|
121
129
|
- test/scanner/test_escapes.rb
|
122
130
|
- test/scanner/test_free_space.rb
|
@@ -191,11 +199,14 @@ test_files:
|
|
191
199
|
- test/parser/test_free_space.rb
|
192
200
|
- test/parser/test_anchors.rb
|
193
201
|
- test/parser/test_escapes.rb
|
202
|
+
- test/parser/test_posix_classes.rb
|
194
203
|
- test/parser/test_quantifiers.rb
|
195
204
|
- test/parser/test_keep.rb
|
196
205
|
- test/parser/test_conditionals.rb
|
197
206
|
- test/parser/test_errors.rb
|
198
207
|
- test/parser/test_refcalls.rb
|
208
|
+
- test/parser/set/test_intersections.rb
|
209
|
+
- test/parser/set/test_ranges.rb
|
199
210
|
- test/parser/test_all.rb
|
200
211
|
- test/support/disable_autotest.rb
|
201
212
|
- test/support/warning_extractor.rb
|
@@ -225,7 +236,6 @@ test_files:
|
|
225
236
|
- test/scanner/test_sets.rb
|
226
237
|
- test/scanner/test_properties.rb
|
227
238
|
- test/scanner/test_scripts.rb
|
228
|
-
- test/scanner/test_emojis.rb
|
229
239
|
- test/scanner/test_types.rb
|
230
240
|
- test/scanner/test_groups.rb
|
231
241
|
- test/scanner/test_meta.rb
|
data/ChangeLog
DELETED
@@ -1,325 +0,0 @@
|
|
1
|
-
Sun Apr 29 2018 Janosch Müller <janosch84@gmail.com>
|
2
|
-
|
3
|
-
* Changed handling of Ruby versions (PR #53)
|
4
|
-
- New Ruby versions are now supported by default
|
5
|
-
- Some deep-lying APIs have changed, which should not affect most users:
|
6
|
-
- `Regexp::Syntax::VERSIONS` is gone
|
7
|
-
- Syntax version names have changed from `Regexp::Syntax::Ruby::Vnnn`
|
8
|
-
to `Regexp::Syntax::Vn_n_n`
|
9
|
-
- Syntax version classes for Ruby versions without regex feature changes
|
10
|
-
are no longer predefined and are now only created on demand / lazily
|
11
|
-
- `Regexp::Syntax::supported?` returns true for any argument >= 1.8.6
|
12
|
-
* Fixed some use cases of Expression methods #strfregexp and #to_h (@e738107)
|
13
|
-
* Added full signature support to collection methods of Expressions (@aa7c55a)
|
14
|
-
* Bumped version to 0.5.0
|
15
|
-
|
16
|
-
Tue Apr 4 2018 ammarabuali@gmail.com <ammarabuali@gmail.com>
|
17
|
-
|
18
|
-
* Added ruby version files for 2.2.10 and 2.3.7
|
19
|
-
* Bumped version to 0.4.13
|
20
|
-
|
21
|
-
Fri Mar 30 2018 Janosch Müller <janosch84@gmail.com>
|
22
|
-
|
23
|
-
* Added ruby version files for 2.4.4 and 2.5.1
|
24
|
-
* Bumped version to 0.4.12
|
25
|
-
|
26
|
-
Sun Mar 4 2018 Janosch Müller <janosch84@gmail.com>
|
27
|
-
|
28
|
-
* Fixed UnknownSyntaxNameError introduced in v0.4.10 if
|
29
|
-
the gems parent dir tree included a 'ruby' dir
|
30
|
-
* Bumped version to 0.4.11
|
31
|
-
|
32
|
-
Sun Mar 4 2018 Janosch Müller <janosch84@gmail.com>
|
33
|
-
|
34
|
-
* Added ruby version file for 2.6.0
|
35
|
-
* Added support for Emoji properties (available in Ruby since 2.5.0)
|
36
|
-
* Added support for XPosixPunct and Regional_Indicator properties
|
37
|
-
* Fixed parsing of Unicode 6.0 and 7.0 script properties
|
38
|
-
* Fixed parsing of the special Assigned property
|
39
|
-
* Fixed scanning of InCyrillic_Supplement property
|
40
|
-
* Bumped version to 0.4.10
|
41
|
-
|
42
|
-
Mon Dec 25 2017 Ammar Ali <ammarabuali@gmail.com>
|
43
|
-
|
44
|
-
* Added ruby version file for 2.5.0
|
45
|
-
* Bumped version to 0.4.9
|
46
|
-
|
47
|
-
Mon Dec 18 2017 Janosch Müller <janosch84@gmail.com>
|
48
|
-
|
49
|
-
* Added ruby version files for 2.2.9, 2.3.6, and 2.4.3
|
50
|
-
* Bumped version to 0.4.8
|
51
|
-
|
52
|
-
Sun Oct 15 2017 Janosch Müller <janosch84@gmail.com>
|
53
|
-
|
54
|
-
* Fixed a thread safety issue (issue #45)
|
55
|
-
* Some public class methods that were only reliable for
|
56
|
-
internal use are now private instance methods (PR #46)
|
57
|
-
* Improved the usefulness of Expression#options (issue #43) -
|
58
|
-
#options and derived methods such as #i?, #m? and #x? are now
|
59
|
-
defined for all Expressions that are affected by such flags.
|
60
|
-
* Fixed scanning of whitespace following (?x) (commit 5c94bd2)
|
61
|
-
* Fixed a Parser bug where the #number attribute of traditional
|
62
|
-
numerical backreferences was not set correctly (commit 851b620)
|
63
|
-
* Bumped version to 0.4.7
|
64
|
-
|
65
|
-
Mon Sep 18 2017 Janosch Müller <janosch84@gmail.com>
|
66
|
-
|
67
|
-
* Added Parser support for hex escapes in sets (PR #36)
|
68
|
-
* Added Parser support for octal escapes (PR #37)
|
69
|
-
* Added support for cluster types \R and \X (PR #38)
|
70
|
-
* Added support for more metacontrol notations (PR #39)
|
71
|
-
* Bumped version to 0.4.6
|
72
|
-
|
73
|
-
Sun Sep 17 2017 Ammar Ali <ammarabuali@gmail.com>
|
74
|
-
|
75
|
-
* Thanks to Janosch Müller (https://github.com/janosch-x):
|
76
|
-
- Support ruby 2.2.7 (PR #42)
|
77
|
-
* Added ruby version files for 2.2.8, 2.3.5, and 2.4.2
|
78
|
-
* Bumped version to 0.4.5
|
79
|
-
|
80
|
-
Mon Jul 10 2017 Ammar Ali <ammarabuali@gmail.com>
|
81
|
-
|
82
|
-
* Thanks to Janosch Müller (https://github.com/janosch-x):
|
83
|
-
- Add support for new absence operator (PR #33)
|
84
|
-
* Thanks to Bartek Bułat (https://github.com/barthez):
|
85
|
-
- Add support for Ruby 2.3.4 version (PR #40)
|
86
|
-
* Bumped version to 0.4.4
|
87
|
-
|
88
|
-
Fri Mar 24 2017 Ammar Ali <ammarabuali@gmail.com>
|
89
|
-
|
90
|
-
* Added ruby version file for 2.4.1
|
91
|
-
* Bumped version to 0.4.3
|
92
|
-
|
93
|
-
Tue Jan 10 2017 Ammar Ali <ammarabuali@gmail.com>
|
94
|
-
|
95
|
-
* Thanks to Janosch Müller (https://github.com/janosch-x):
|
96
|
-
- Support ruby 2.4 (PR #30)
|
97
|
-
* Bumped version to 0.4.2
|
98
|
-
|
99
|
-
Sun Dec 4 2016 Ammar Ali <ammarabuali@gmail.com>
|
100
|
-
|
101
|
-
* Thanks to Janosch Müller (https://github.com/janosch-x):
|
102
|
-
- Improve codepoint handling (PR #27)
|
103
|
-
|
104
|
-
Tue Nov 22 2016 Ammar Ali <ammarabuali@gmail.com>
|
105
|
-
|
106
|
-
* Updated ruby version file for 2.3.3
|
107
|
-
* Bumped version to 0.4.1
|
108
|
-
|
109
|
-
Sun Nov 20 2016 Ammar Ali <ammarabuali@gmail.com>
|
110
|
-
|
111
|
-
* Added Syntax.supported? method
|
112
|
-
* Updated ruby versions for latest releases; 2.1.10, 2.2.6, and 2.3.2
|
113
|
-
* Bumped version to 0.4.0
|
114
|
-
|
115
|
-
Wed Jun 8 2016 Ammar Ali <ammarabuali@gmail.com>
|
116
|
-
|
117
|
-
* Thanks to John Backus (https://github.com/backus):
|
118
|
-
- Remove warnings (PR #26)
|
119
|
-
* Bumped version to 0.3.6
|
120
|
-
|
121
|
-
Mon May 30 2016 Ammar Ali <ammarabuali@gmail.com>
|
122
|
-
|
123
|
-
* Thanks to John Backus (https://github.com/backus):
|
124
|
-
- Fix parsing of /\xFF/n (hex:escape) (PR #24)
|
125
|
-
* Bumped version to 0.3.5
|
126
|
-
|
127
|
-
Wed May 25 2016 Ammar Ali <ammarabuali@gmail.com>
|
128
|
-
|
129
|
-
* Thanks to John Backus (https://github.com/backus):
|
130
|
-
- Fix warnings (PR #19)
|
131
|
-
* Thanks to Dana Scheider (https://github.com/danascheider):
|
132
|
-
- Correct error in README (PR #20)
|
133
|
-
* Fixed mistyped \h and \H character types (issue #21)
|
134
|
-
* Added ancestry syntax files for latest rubies (issue #22)
|
135
|
-
* Bumped version to 0.3.4
|
136
|
-
|
137
|
-
Tue Apr 26 2016 Ammar Ali <ammarabuali@gmail.com>
|
138
|
-
|
139
|
-
* Thanks to John Backus (https://github.com/backus):
|
140
|
-
- Fixed scanning of zero length comments (PR #12)
|
141
|
-
- Fixed missing escape:codepoint_list syntax token (PR #14)
|
142
|
-
- Fixed to_s for modified interval quantifiers (PR #17)
|
143
|
-
* Added a note about MRI implementation quirks to Scanner section
|
144
|
-
* Bumped version to 0.3.3
|
145
|
-
|
146
|
-
Fri Jan 1 2016 Ammar Ali <ammarabuali@gmail.com>
|
147
|
-
|
148
|
-
* Updated ruby versions for latest releases; 2.1.8, 2.2.4, and 2.3.0
|
149
|
-
* Fixed class name for UnknownSyntaxNameError exception
|
150
|
-
* Bumped version to 0.3.2
|
151
|
-
|
152
|
-
Sat Aug 29 2015 Ammar Ali <ammarabuali@gmail.com>
|
153
|
-
|
154
|
-
* Updated ruby versions for latest releases; 2.1.7, 2.2.3
|
155
|
-
|
156
|
-
Sun Aug 6 2015 Ammar Ali <ammarabuali@gmail.com>
|
157
|
-
|
158
|
-
* Added UnicodeBlocks support to the parser.
|
159
|
-
|
160
|
-
Mon Aug 3 2015 Garen Torikian <gjtorikian@gmail.com>
|
161
|
-
|
162
|
-
* Added UnicodeBlocks support to the scanner.
|
163
|
-
|
164
|
-
Sat Apr 18 14:38:12 2015 Ammar Ali <ammarabuali@gmail.com>
|
165
|
-
|
166
|
-
* Updated ruby versions for latest releases.
|
167
|
-
|
168
|
-
Wed Dec 3 05:21:27 2014 Ammar Ali <ammarabuali@gmail.com>
|
169
|
-
|
170
|
-
* Added expand_members method to CharacterSet, returns traditional
|
171
|
-
or unicode property forms of shothands (\d, \W, \s, etc.)
|
172
|
-
|
173
|
-
Tue Dec 2 02:42:39 2014 Ammar Ali <ammarabuali@gmail.com>
|
174
|
-
|
175
|
-
* Improved meaning and output of %t and %T in strfregexp.
|
176
|
-
|
177
|
-
* Added syntax versions for ruby 2.1.4 and 2.1.5 and updated
|
178
|
-
latest 2.1 version.
|
179
|
-
|
180
|
-
Mon Dec 1 15:52:31 2014 Ammar Ali <ammarabuali@gmail.com>
|
181
|
-
|
182
|
-
* Added to_h methods to Expression, Subexpression, and Quantifier.
|
183
|
-
|
184
|
-
Tue Oct 21 19:14:03 2014 Ammar Ali <ammarabuali@gmail.com>
|
185
|
-
|
186
|
-
* Added traversal methods; traverse, each_expression, and map.
|
187
|
-
|
188
|
-
* Added token/type test methods; type?, is?, and one_of?
|
189
|
-
|
190
|
-
* Added printing method strfregexp, inspired by strftime.
|
191
|
-
|
192
|
-
Mon Oct 20 01:03:46 2014 Ammar Ali <ammarabuali@gmail.com>
|
193
|
-
|
194
|
-
* Added scanning and parsing of free spacing (x mode) expressions.
|
195
|
-
|
196
|
-
* Improved handling of inline options (?mixdau:...)
|
197
|
-
|
198
|
-
Fri Oct 18 14:09:38 2014 Ammar Ali <ammarabuali@gmail.com>
|
199
|
-
|
200
|
-
* Added conditional expressions. Ruby 2.0.
|
201
|
-
|
202
|
-
* Added keep (\K) markers. Ruby 2.0.
|
203
|
-
|
204
|
-
* Added d, a, and u options. Ruby 2.0.
|
205
|
-
|
206
|
-
* Added missing meta sequences to the parser. They were supported
|
207
|
-
by the scanner only.
|
208
|
-
|
209
|
-
* Renamed Lexer's method to lex, added an alias to the old name (scan)
|
210
|
-
|
211
|
-
* Use #map instead of #each to run the block in Lexer.lex.
|
212
|
-
|
213
|
-
* Replaced VERSION.yml file with a constant.
|
214
|
-
|
215
|
-
* Updated README
|
216
|
-
|
217
|
-
Fri Oct 10 11:49:38 2014 Ammar Ali <ammarabuali@gmail.com>
|
218
|
-
|
219
|
-
* Update tokens and scanner with new additions in Unicode 7.0.
|
220
|
-
|
221
|
-
Mon Oct 6 04:30:24 2014 Ammar Ali <ammarabuali@gmail.com>
|
222
|
-
|
223
|
-
* Released version 0.1.6
|
224
|
-
|
225
|
-
Sun Oct 5 19:58:17 2014 Ammar Ali <ammarabuali@gmail.com>
|
226
|
-
|
227
|
-
* Fixed test and gem building rake tasks and extracted the gem
|
228
|
-
specification from the Rakefile into a .gemspec file.
|
229
|
-
|
230
|
-
* Added syntax files for missing ruby 2.x versions. These do not add
|
231
|
-
extra syntax support, they just make the gem work with the newer
|
232
|
-
ruby versions.
|
233
|
-
|
234
|
-
* Added .travis.yml to project root.
|
235
|
-
|
236
|
-
* README:
|
237
|
-
|
238
|
-
* Removed note purporting runtime support for ruby 1.8.6.
|
239
|
-
|
240
|
-
* Added a section identifying the main unsupported syntax features.
|
241
|
-
|
242
|
-
* Added sections for Testing and Building
|
243
|
-
|
244
|
-
* Added badges for gem version, Travis CI, and code climate.
|
245
|
-
|
246
|
-
Sat Oct 4 13:46:24 2014 Ammar Ali <ammarabuali@gmail.com>
|
247
|
-
|
248
|
-
* Updated README, fixing broken examples, and converting it from
|
249
|
-
a rdoc file to Github's flavor of Markdown.
|
250
|
-
|
251
|
-
* Fixed a parser bug where an alternation sequence that contained
|
252
|
-
nested expressions was incorrectly being appended to the parent
|
253
|
-
expression when the nesting was exited. e.g. in /a|(b)c/, c was
|
254
|
-
appended to the root.
|
255
|
-
|
256
|
-
Wed May 7 5:52:37 2014 Ammar Ali <ammarabuali@gmail.com>
|
257
|
-
|
258
|
-
* Fixed a bug where character types were not being correctly scanned
|
259
|
-
within character sets. e.g. in [\d], two tokens were scanned; one
|
260
|
-
for the backslash '\' and one for the 'd'
|
261
|
-
|
262
|
-
Tue Jan 14 13:14:24 2014 Ammar Ali <ammarabuali@gmail.com>
|
263
|
-
|
264
|
-
* Released version 0.1.5, with a correct ChangeLog.
|
265
|
-
|
266
|
-
Tue Jan 14 13:14:24 2014 Ammar Ali <ammarabuali@gmail.com>
|
267
|
-
|
268
|
-
* Released version 0.1.4, after accidental yank of last version.
|
269
|
-
|
270
|
-
Tue Jan 14 13:05:13 2014 Ammar Ali <ammarabuali@gmail.com>
|
271
|
-
|
272
|
-
* Released version 0.1.3, adds missing VERSION.yml file.
|
273
|
-
|
274
|
-
Tue Jan 14 12:41:52 2014 Ammar Ali <ammarabuali@gmail.com>
|
275
|
-
|
276
|
-
* Released version 0.1.2
|
277
|
-
|
278
|
-
* Added syntax stubs for ruby versions 2.0 and 2.1
|
279
|
-
|
280
|
-
Sat Feb 9 12:27:13 2010 Ammar Ali <ammarabuali@gmail.com>
|
281
|
-
|
282
|
-
* Added clone methods for deep copying expressions.
|
283
|
-
|
284
|
-
* Added optional format argument for to_s on expressions to return the
|
285
|
-
text of the expression with (:full, the default) or without (:base)
|
286
|
-
its quantifier.
|
287
|
-
|
288
|
-
* Renamed the :beginning_of_line and :end_of_line tokens to :bol and
|
289
|
-
:eol.
|
290
|
-
|
291
|
-
* Fixed a bug where alternations with more than two alternatives and
|
292
|
-
one of them ending in a group were being incorrectly nested.
|
293
|
-
|
294
|
-
* Improved EOF handling in general and especially from sequences like
|
295
|
-
hex and control escapes.
|
296
|
-
|
297
|
-
* Fixed a bug where named groups with an empty name would return a
|
298
|
-
blank token [].
|
299
|
-
|
300
|
-
* Fixed a bug where member of a parent set where being added to its
|
301
|
-
last subset.
|
302
|
-
|
303
|
-
* Various code cleanups in scanner.rl
|
304
|
-
|
305
|
-
* Fixed a few mutable string bugs by calling dup on the originals.
|
306
|
-
|
307
|
-
Tue Nov 23 11:35:56 2010 Ammar Ali <ammarabuali@gmail.com>
|
308
|
-
|
309
|
-
* Made ruby 1.8.6 the base for all 1.8 syntax, and the 1.8 name a pointer
|
310
|
-
to the latest (1.8.7 at this time)
|
311
|
-
|
312
|
-
* Removed look-behind assertions (positive and negative) from 1.8 syntax
|
313
|
-
|
314
|
-
* Added control (\cc and \C-c) and meta (\M-c) escapes to 1.8 syntax
|
315
|
-
|
316
|
-
* The default syntax is now the one of the running ruby version in both the
|
317
|
-
lexer and the parser.
|
318
|
-
|
319
|
-
Sun Nov 21 03:36:42 2010 Ammar Ali <ammarabuali@gmail.com>
|
320
|
-
|
321
|
-
* Released version 0.1.0
|
322
|
-
|
323
|
-
Sat Nov 20 16:40:10 2010 Ammar Ali <ammarabuali@gmail.com>
|
324
|
-
|
325
|
-
* Initial version bump to 0.1.0
|