Nathan Sashihara
453faadf5b
Replace is(Unqual!T == Unqual!U) with is(immutable T == immutable U) for speed & memory usage
2020-08-03 15:07:32 +02:00
Geod24
04f3979317
Replace 'Issue XXX' with Bugzilla links
...
Make the links clickable, as was done in the DMD repository.
Also avoids any ambiguity w.r.t. where the issue is stored.
2020-04-13 16:28:09 +09:00
Adam D. Ruppe
ae93f5317c
Use consistent quickindex wrapper around hand-written list-of-links tables
2020-02-21 21:04:05 -05:00
ZombineDev
b923f740f6
Fix Issue 20301 - Support const array of patterns in std.regex.regex
2019-10-16 14:33:49 +03:00
Nathan Sashihara
e226022680
Fix Issue 20098 - Improve result of printing std.regex compiled pattern
2019-08-02 15:53:21 -07:00
David Gileadi
775bcdee51
Turn on -preview=markdown
2019-07-04 10:28:30 -07:00
Vladimir Panteleev
3c472274f1
std.regex.package: Documented null values of captures
2019-06-18 11:25:43 +00:00
Vladimir Panteleev
6c5d7230bc
Fix Issue 19979 - std.regex should return null for non-matched captures
2019-06-17 21:11:06 +00:00
Sebastian Wilzbach
8bc39461aa
Use selective top-level module imports in std.{path,range,regex}
2019-05-23 10:25:16 +02:00
Hiroki Noda
03f19cf3d2
regex/internal/parser.d: remove unreachable statement
2019-05-15 10:41:19 +09:00
Martin Kinkelin
5cc7fc5fb2
std.regex: Fix reassignment of ctRegex wrapper structs
...
Previously, reassigning such a wrapper resulted in the static immutable
Regex!Char global for that pattern (`staticRe`) to be overwritten by the
global for the new pattern (!). Made possible via alias this and the
logical-const hack.
Proposed fix: keep on allowing reassignments (people are already using
them), but just point to another pattern's global. So use a common
Wrapper struct type wrapping a pointer instead of an empty struct type
per pattern.
Bug reported in https://github.com/ldc-developers/ldc/issues/2961 .
2019-02-02 23:03:02 +01:00
Nathan Sashihara
725278b2ce
Fix Issue 19331 - std.regex.internal.ir.SmallFixedArray.toHash is ignored because it's non-const
2018-10-25 03:22:04 -04:00
Iain Buclaw
fd5facfe04
posix.mak: Enforce whitespace before opening parenthesis for version conditions
2018-09-22 16:57:24 +02:00
aG0aep6G
b9fe8b9ed0
Ddoc: fix unescaped dollar sign
2018-09-13 19:22:55 +02:00
Nick Treleaven
02d0104c57
popFront is not a property
2018-06-08 17:33:55 +01:00
Sebastian Wilzbach
c324714fde
Remove a few cases of underscore escaping
2018-06-04 13:05:01 +02:00
Martin Nowak
9fdcf660dd
Merge remote-tracking branch 'upstream/stable' into merge_stable
...
# Conflicts:
# std/bitmanip.d
2018-04-06 19:39:58 +02:00
Sebastian Wilzbach
42894784dd
Markdownify Phobos
...
$(D word) -> `word`
2018-04-02 22:32:47 +02:00
Dmitry Olshansky
b602b5a3f4
Fix issue 18691 - memory errors in std.regex.Captures
...
Instead of a messy code that ended up with refcount at the wrong place
provide a clean fixed-size array with required semantics and
build on top of that.
2018-03-29 19:49:51 +03:00
carblue
5fb1fe7639
std.regex.internal.tests: Fix a -dip1000 compilable issue
2018-03-26 13:59:18 +02:00
Sebastian Wilzbach
8f86a0d734
Fix if constraints indentation
2018-03-24 13:17:53 +01:00
The Dlang Bot
02aebb2920
Merge pull request #6268 from DmitryOlshansky/regex-cacheing
...
Cache and reuse std.regex engine to speed repeated matching
merged-on-behalf-of: David Nadlinger <code@klickverbot.at>
2018-03-22 02:21:27 +01:00
Dmitry Olshansky
4318073f40
Fix issue 18600 Revamp std.regex caching for matchFirst case
2018-03-21 14:53:34 +03:00
WebFreak001
0b9ca7107c
Fix Issue 18565 - std.regex Captures opAssign returns void
2018-03-11 19:47:38 +01:00
Martin Nowak
7283f680f3
add back logical const workaround
...
- needed for compatibility with existing ctRegex users (e.g. Higgs)
- cast reference instead of value to avoid copying
2018-02-22 17:35:08 +01: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
Martin Nowak
2e9a9db772
Revert "fix broken Jenkins CI"
...
This reverts commit 7bf26afced
.
2018-02-22 16:59:09 +01:00
Martin
3db3dd8899
std.regex: Alignment hotfix
...
This fixes the unittests for LDC on ARM (with enabled optimizations).
The code used to store a class instance (whose size isn't padded) right
before some buffer, without any padding inbetween. The buffer is thus
susceptible to misalignment; e.g., `BacktrackingMatcher.dupTo()` casts
the buffer from `void[]` to `size_t[]` (in `initExternalMemory()`),
simply assuming an alignment >= `size_t.alignof`, which only holds if
the prepended class instance size is a multiple of that (as `malloc()`
returns a sufficiently aligned block already in this case).
2018-02-15 20:41:59 +01:00
Sebastian Wilzbach
d9830b739e
Fix DScanner warnings
2018-02-10 22:46:32 +01:00
Sebastian Wilzbach
a60fd0c1a5
Splitup regex tests to please auto-tester
2018-01-24 17:59:40 +01:00
The Dlang Bot
52042cf2f4
Merge pull request #6052 from wilzbach/static_iota_std_regex_internal_backtracking
...
Remove staticIota: std_regex_internal_backtracking
merged-on-behalf-of: Jack Stouffer <jack@jackstouffer.com>
2018-01-23 02:47:37 +01:00
Sebastian Wilzbach
3ad744d351
Remove staticIota: std_regex_internal_tests
2018-01-22 17:19:06 +01:00
Sebastian Wilzbach
252a322315
Remove staticIota: std_regex_internal_backtracking
2018-01-22 17:18:59 +01:00
RazvanN7
281fe177ac
Fix erroneous imports
2018-01-22 16:37:22 +02:00
The Dlang Bot
f3189822ab
Merge pull request #5989 from wilzbach/static-foreach
...
Use static foreach in Phobos
merged-on-behalf-of: Andrei Alexandrescu <andralex@users.noreply.github.com>
2018-01-03 19:05:07 +01:00
Sebastian Wilzbach
7de3787876
Use static foreach in Phobos
2018-01-03 17:30:11 +01:00
Steven Schveighoffer
fdc3e994cd
Explicitly type RegexMatch.front (and add inout because captures has
...
inout as well). Fixes issue 18124
2017-12-31 09:24:47 -05:00
Martin Nowak
b221120735
fix Issue 18135 - can't join RegexMatch anymore
...
- fix copying of structs with RegexMatch fields by making
const interface reference rebindable
2017-12-29 13:52:35 +01:00
Dmitry Olshansky
881658eabc
Faster to import std.regex, by lazy eval of wordMatcher
2017-12-18 17:50:53 +03:00
The Dlang Bot
ad489989ec
Merge pull request #5722 from DmitryOlshansky/regex-matcher-interfaces
...
std.regex: major internal redesign, also fixes issue 13532
merged-on-behalf-of: Andrei Alexandrescu <andralex@users.noreply.github.com>
2017-10-16 20:16:33 +02:00
Dmitry Olshansky
f4c963b5e9
Silence the circleCI style check?
2017-10-16 19:14:42 +03:00
Dmitry Olshansky
13ea5f9aea
Drop another level of templatizations in backtracking
2017-10-11 18:18:12 +03: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
Matthew Strawbridge
3f9d421aac
Include 's' in the list of valid regex flags
2017-10-01 20:54:00 +01:00
Dmitry Olshansky
7bf26afced
fix broken Jenkins CI
2017-09-28 11:55:43 +03:00
Dmitry Olshansky
c49ea4f8c7
Another attempt to even the odds of enum/static speed
2017-09-28 11:55:43 +03:00
Dmitry Olshansky
09491f96e6
Another try to fix ratio of static/enum
2017-09-28 11:55:43 +03:00
Dmitry Olshansky
ee1f69a570
Initialize subCounters
2017-09-28 11:55:43 +03:00
Dmitry Olshansky
dc9b60c1f3
Trying to narrow down flakiness of timing
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