30 Commits

Author SHA1 Message Date
InspIRCd Robot
fd4c5e3840 Update copyright headers. 2024-06-21 10:36:09 +01:00
InspIRCd Robot
ae3e2db109 Update copyright headers. 2024-06-07 10:37:56 +01:00
Sadie Powell
21b5db5d9e Don't include "regex/" in the link data of the filter/rline modules. 2023-08-18 13:41:28 +01:00
Sadie Powell
b2d86bb8a1 Qualify auto correctly in all cases. 2023-01-10 23:30:34 +00:00
Sadie Powell
d048778f78 Merge branch 'insp3' into master. 2023-01-01 13:19:45 +00:00
InspIRCd Robot
2b810b412a Update copyright headers. 2022-12-30 11:31:28 +00:00
Sadie Powell
a0850bc53f Add methods for extracting specific regex captures. 2022-06-28 14:00:14 +01:00
Sadie Powell
f7c041f560 Implement support for regex capture groups. 2022-05-06 15:53:08 +01:00
Sadie Powell
0e7883dd96 Format enums with an underlying type like classes. 2022-04-30 14:47:39 +01:00
Sadie Powell
8ab6b7230f Remove duplicate includes from module headers. 2022-01-25 16:20:45 +00:00
Sadie Powell
d79147e7af Abolish the infernal space before accessibility keywords. 2022-01-25 14:02:36 +00:00
Sadie Powell
52cc8a4183 Refactor CoreException and ModuleException. 2022-01-07 17:16:50 +00:00
Sadie Powell
029e047f99 Mark Regex::Engine::Create{Human,} as const. 2021-12-16 14:17:56 +00:00
Sadie Powell
226c316866 Make upper case regex flags remove the flag if previously set. 2021-12-16 14:13:42 +00:00
Sadie Powell
f2386ea01f Add the regex_pcre2 module. 2021-09-26 19:16:51 +01:00
Sadie Powell
7a712456f1 Merge branch 'insp3' into master. 2021-05-14 16:54:33 +01:00
InspIRCd Robot
e94b673532 Update copyright headers. 2021-05-14 14:48:39 +01:00
Sadie Powell
3ca912ad71 Merge branch 'insp3' into master. 2021-05-11 04:07:45 +01:00
Sadie Powell
b4a174ee9c Fix a bunch of weird indentation and spacing issues. 2021-04-27 16:41:14 +01:00
Sadie Powell
942fd2bcfd Switch simple iterator loops to use range-based for loops. 2021-04-07 10:36:11 +01:00
Sadie Powell
7d84e4900f Fix a ton of pedantic compiler warnings. 2021-04-04 23:42:15 +01:00
Sadie Powell
e76b208ce8 Merge branch 'insp3' into master. 2021-03-05 09:54:26 +00:00
Sadie Powell
2ba32afa9a Fix a bunch of really obvious unnecessary includes. 2021-03-05 09:17:13 +00:00
Sadie Powell
1d06a27acc Add a method for creating a regex pattern with included flags. 2020-07-29 10:42:31 +01:00
Sadie Powell
1621a84f96 Rewrite the regex system from scratch.
* Move everything to the Regex namespace:
  - Regex -> Regex::Pattern
  - RegexException -> Regex::Exception
  - RegexFactory -> Regex::Engine

* Add support for regex flags.
  - Regex::OPT_CASE_INSENSITIVE performs case-insensitive matching.

* Add the Regex::EngineReference class as a friendly wrapper around
  dynamic_reference_nocheck<Regex::Engine>.

* Add the Regex::SimpleEngine template class for automating the
  implementation of regex factory classes.

* Use std::shared_ptr for Regex::Pattern objects instead of making
  users manage memory manually.
2020-07-28 19:22:59 +01:00
InspIRCd Robot
aa692dc103 Update copyright headers. 2020-01-11 22:14:43 +00:00
attilamolnar
5384ddf545 Fix Windows build and a few more problems 2013-08-27 15:03:10 +02:00
Peter Powell
eaf658de3d Fix various small issues.
- Add CXX11_OVERRIDE to *Regex::Matches and *RegexFactory::Create.
- Fix documentation comment on regex_string.
- Fix various code duplication/layout issues.
2013-08-27 12:20:03 +01:00
Peter Powell
0e7f74a7c8 Make all regex modules throw the same exception on error. 2013-08-27 12:07:49 +01:00
Peter Powell
11cafc12d5 Tidy up source files:
- Use #pragma once instead of include guards.
- Move header files in src/modules to include/modules.
- Fixed various spacing issues.
2013-04-12 17:03:05 +01:00