Commit graph

229 commits

Author SHA1 Message Date
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
Dmitry Olshansky
8bfa66c50a Fix CI complaints 2017-09-28 11:55:43 +03:00