Commit graph

36 commits

Author SHA1 Message Date
Vladiwostok
231ae8b68a
Fix D-Scanner linting issues (#9070)
* Fix UndocumentedDeclarationCheck linting issue

* Fix IfConstraintsIndentCheck linting issue

* Address feedback

* Fix publictests CI

* Fix old (libdparse) D-Scanner linting warn
2024-10-27 01:21:56 -07:00
Hiroki Noda
336730e471
std.regex: Refactor kicked (#8732) 2023-04-17 12:47:12 +03:00
Luís Ferreira
d97b65a697
regex: partially make regex pure
Signed-off-by: Luís Ferreira <contact@lsferreira.net>
2020-10-26 18:05:46 +00:00
Nick Treleaven
02d0104c57 popFront is not a property 2018-06-08 17:33:55 +01:00
Dmitry Olshansky
4318073f40 Fix issue 18600 Revamp std.regex caching for matchFirst case 2018-03-21 14:53:34 +03:00
Martin Nowak
59520969ef fix Issue 18114 - regex performance regression
- reduce copying of fat structs
- optimize layouts and opAssign of Captures
2018-02-22 16:59:09 +01:00
Dmitry Olshansky
41c229647d Need to propagate subCounters
Disable "benchmark" in unittest, it's too volatile
with different compiler flags
Also use GC.addRange/GC.removeRange
2017-10-06 11:20:55 +03:00
Dmitry Olshansky
ee1f69a570 Initialize subCounters 2017-09-28 11:55:43 +03:00
Dmitry Olshansky
eaa62a83db Fix latent bug due to emplacing over uninitialized memory 2017-09-28 11:55:43 +03:00
Dmitry Olshansky
8bfa66c50a Fix CI complaints 2017-09-28 11:55:43 +03:00
Dmitry Olshansky
c7bdfbe51b std.regex finish the loose ends in the great refactoring 2017-09-28 11:55:43 +03:00
Dmitry Olshansky
639dd3dd6f The new std.regex design is concluded, going through the unitests 2017-09-28 11:55:43 +03:00
Dmitry Olshansky
6e684343d7 WIP - refactoring towards sane std.regex code 2017-09-28 11:55:43 +03:00
Sebastian Wilzbach
61717ecc7d Sort imports 2017-06-12 07:54:38 +02:00
Sebastian Wilzbach
0b33b50812 Automatically add spaces to binary operators (!=)
command:

sed -E "s/([[:alnum:]]) != ([[:alnum:]])/\1 != \2/g" -i **/*.d
sed -E "s/([[:alnum:]])!= ([[:alnum:]])/\1 != \2/g" -i **/*.d
sed -E "s/([[:alnum:]]) !=([[:alnum:]])/\1 != \2/g" -i **/*.d
2017-02-23 00:57:47 +01:00
Sebastian Wilzbach
425ab667a3 Automatically set the range style from a..b -> a .. b
Commands:

sed -E "s/([[:alnum:]])[.][.]([[:alnum:]])/\1 .. \2/g" -i **/*.d
sed -E "s/([[:alnum:]])[.][.] ([[:alnum:]])/\1 .. \2/g" -i **/*.d
sed -E "s/([[:alnum:]]) [.][.]([[:alnum:]])/\1 .. \2/g" -i **/*.d
2017-02-22 05:37:31 +01:00
Sebastian Wilzbach
87dec58a41 DStyle: Constraints on declarations should have the same indentation level 2017-02-17 07:36:23 +01:00
Jack Stouffer
5a2491a847 Fix Issue 17161 - Revert all changes to std.regex from 2.072.2 onwards 2017-02-12 12:30:40 -05:00
Dmitry Olshansky
a2b5649805 [std.regex] More compact ThompsonMatcher struct, some % perf gain 2016-10-16 20:38:06 +03:00
Dmitry Olshansky
e98fa4ad5a [std.regex] Fix issue 9391 - const regex, ctRegex is immutable 2016-10-07 01:40:41 +03:00
Dmitry Olshansky
66048ae334 [Refactor] Generalize kickstart engines, in preparation for more to come 2016-10-01 20:59:12 +03:00
Jack Stouffer
03060622d8 Removed package wide std.range import from std.regex.internal.thompson 2016-07-04 15:37:30 -04:00
Jack Stouffer
c1600e7cf8 Fixed long lines in std/regex/internal/thompson.d 2016-05-10 20:51:39 -04:00
Dmitry Olshansky
680f690939 [std.regex] Inline regex flags 2016-04-30 11:39:05 +03:00
Sebastian Wilzbach
5a8988c149 style fix: add space after for operator 2016-04-27 02:04:02 +03:00
Sebastian Wilzbach
3d67cd228c style fix: space between operators 2016-04-26 22:26:20 +03:00
Dmitry Olshansky
e6c3320b1f Fix issue 12227 - Allow matching multiple patterns in one go with std.regex 2016-04-15 16:17:36 +03:00
Dmitry Olshansky
19778b1c7a address review comments 2016-03-28 12:54:59 +03:00
Dmitry Olshansky
df07aa7dea Special case ASCII to use bit tables insted of 2-level tries 2016-03-27 20:26:49 +03:00
Dmitry Olshansky
0e55583fed Start small - direct dispatch tables 2016-03-27 16:49:44 +03:00
Dmitry Olshansky
ec7b647d27 Segregate opcodes to functions; preparation to JIT
Then generate sequence of function calls to them..
2016-03-27 16:24:03 +03:00
Dmitry Olshansky
9d445d182d Introduce filtered loops with bloom filters
Make use of bloom filter on dchar to predict if we should take the
out of loop branch.
2016-03-21 22:06:56 +03:00
Dmitry Olshansky
88c3a3d52f 2 minor tweaks to std.regex default engine
Roughly 10-15% faster on a few common patterns.
2016-03-07 15:46:30 +03:00
Martin Nowak
ce2ac192c9 fix incorrect imports/fqn usages
- mostly of the form `import a.b : sym; a.b.sym();`, which is wrong b/c
  selective imports do not add the module to the current scope
2016-02-20 14:41:44 +01:00
k-hara
e7b3d834d7 detab and remove trailing whitespaces 2015-02-10 00:56:40 +09:00
Dmitry Olshansky
2b78074fc2 Split up the intertwined mess of std.regex.
The docs and API still stay in one file.
With time and refactoring more internals may be
exposed such as parser, each engine explicitly
and the sample generator (generator.d).

Also inclusdes changes prompted by reviews/pulls:

Convert spaces-->tabs in makefiles.
Move things (again) to std/regex/internal.
Use new package(std.regex) feature.
Remove C-style arrays (some other pull against regex.d).
2014-09-13 13:45:46 +04:00