Commit graph

254 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
Nick Treleaven
ccd3115b8b [std.regex] Fix unsafe casts to bool
These are disallowed in `@safe` code with
https://github.com/dlang/dmd/pull/16558.
2024-06-03 16:27:09 +02:00
Dennis Korpel
af132bedb1 std.regex: put disassemble function in debug version 2024-01-10 00:32:27 +01:00
Dennis
569bc57098
Mark unsafe union access @trusted (#8787) 2023-07-31 13:58:35 +03:00
Richard (Rikki) Andrew Cattermole
f22cc260f8
Improve std.regex wordMatcher build times by delaying its work from CT to RT if possible (#8699) 2023-06-15 09:44:40 +03:00
Hiroki Noda
336730e471
std.regex: Refactor kicked (#8732) 2023-04-17 12:47:12 +03:00
richard (rikki) andrew cattermole
ff86bb0d70 Improve std.regex build times by removing a formattedWrite call 2023-02-25 02:29:32 +13:00
Gabriel Dolberg
21d7d23d4f Typo: begining -> beginning 2022-12-26 20:22:08 +01:00
Nick Treleaven
42ab9b1382 [std/regex] Improve docs
Split up Synopsis examples, add titles and make them runnable.
Move link out of example (as the macro is not expanded in a code block).
Change ctRegex `alias flags` parameter to string (which is already
required by the implementation).
2022-08-13 14:28:41 +00:00
Dennis Korpel
c0cc5e917d Fix switch fallthrough 2022-04-11 11:26:11 +00:00
Hiroki Noda
ab74189c65 std.regex: doc: Add zero or one repetition (greedy/reluctant) 2022-01-23 18:15:32 +09:00
DoctorNoobingstoneIPresume
ae900ac6c6 std.regex: Doc: Synopsis: Fix typo&spacing, clarify an example, add another. 2021-11-27 23:21:11 +02:00
Max Haughton
e0ce464118 Fix Issue 21600 - (Try to) Document named captures 2021-07-20 01:55:01 +01:00
MoonlightSentinel
ff934f9332 Remove duplicate assumePureFunction from std.regex
It's redundant and has the same invalid constraint that was
fixed for the other implementation
2021-05-10 13:17:42 +02:00
MoonlightSentinel
5b6507df1f Fix template constraint of assumePureFunction
The constraint was actually a runtime `if`, leaving `assumePureFunction`
without a `return` at the end of the function.
2021-04-26 14:55:11 +02:00
Jon Degenhardt
34e58ec857 Fix issue 21716: std.regex performance regression. 2021-04-25 20:43:24 +08:00
berni44
b2019ebab0 Narrow imports of std.math in the rest of phobos. 2021-04-21 03:00:57 +02:00
berni44
6f2a0934a7 Adapt imports of std.format to new structure of std.format. 2021-03-19 13:22:00 +01:00
Martin Kinkelin
1a459c5996 Get rid of std.conv.emplace[Ref](), use core[.internal].lifetime
The emplace() stuff was moved to druntime; for some reason, it's still
in Phobos.

I've diffed the two versions, and they are still almost identical (incl.
unittests); the druntime version appears to have seen some improvements
(e.g., forwarding r/lvalueness of the arguments) in the meantime.
2021-01-17 16:02:25 +01:00
Tobias Pankrath
06dbaa1ed5 review comments 2020-12-12 14:53:29 +01:00
Panke
b5438373ca
Update package.d 2020-12-12 14:01:53 +01:00
Panke
7746e007d2
] in character classes must be escaped.
see https://forum.dlang.org/post/vosqqfhrvddeekjopjjp@forum.dlang.org
2020-12-12 13:59:20 +01: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
Luís Ferreira
35e2ac7a60
regex: use pure/enforce version of malloc/free functions
Signed-off-by: Luís Ferreira <contact@lsferreira.net>
2020-10-26 17:17:39 +00:00
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