16 Commits

Author SHA1 Message Date
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