aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/functions-regex.cxx
AgeCommit message (Collapse)AuthorFilesLines
2024-10-28Make $regex.*search() functions not to match empty substrings in non empty ↵Karen Arutyunov1-4/+38
strings
2024-05-20Add $string.contains(), $string.starts_with(), $string.ends_with()Boris Kolpackov1-0/+3
Also fix bug in $string.replace().
2024-04-01Add $string.replace() functionBoris Kolpackov1-0/+2
2023-08-09Complete and cleanup function documentation in preparation for auto-extractionBoris Kolpackov1-74/+66
Also: - Move the $target.*() function family from functions-name.cxx to separate functions-target.cxx. - Get rid of the separate $process_path_ex.*() family, merging it with $process_path.*().
2022-12-15Add $regex.filter[_out]_{match,search}() functionsKaren Arutyunov1-67/+206
2022-12-14Improve empty simple value to empty list of names reduction heuristicsBoris Kolpackov1-1/+1
Specifically, do not reduce typed RHS empty simple values for prepend/append and additionally for assignment provided LHS is typed and is a container.
2022-12-13Add format_copy_empty flag to $regex.{split,merge,apply}()Boris Kolpackov1-20/+54
2022-12-13Return all subexpressions in $regex.{match,search}(), not only matchedBoris Kolpackov1-8/+2
The old semantics was unusable for optional groups (e.g., `(...)?`).
2022-10-27Suppress (potential) bogus GCC 12 -Wrestrict warningsBoris Kolpackov1-4/+4
2021-09-28Adapt to libbutl headers extension change from .mxx to .hxxKaren Arutyunov1-5/+5
2020-12-04Mark Buildfile functions as pure or impureBoris Kolpackov1-18/+18
2020-07-18Add $regex.find_match() and $regex.find_search() functionsKaren Arutyunov1-0/+98
2020-04-03Skip unmatched lines in $regex.replace_lines() if format_no_copy flag is ↵Karen Arutyunov1-3/+5
specified
2020-04-02Fix ~host config to only contain cc and bin modules configurationBoris Kolpackov1-0/+3
Also add ~build2 that contains everything (except config.dist.*) to be used for build system modules.
2020-02-07Drop copyright notice from source codeKaren Arutyunov1-1/+0
2019-11-08Add $regex.replace_lines() functionKaren Arutyunov1-2/+141
2019-10-01Make $regex.{match,search}() to return NULL for no match if return_match or ↵Karen Arutyunov1-11/+19
return_match flag is specified
2019-09-30Pattern matching support (switch): single value implementationBoris Kolpackov1-1/+1
2019-08-23Introduce notion of build contextBoris Kolpackov1-2/+2
All non-const global state is now in class context and we can now have multiple independent builds going on at the same time.
2019-07-01Split build system into library and driverBoris Kolpackov1-0/+542