aboutsummaryrefslogtreecommitdiff
path: root/pattern.h
AgeCommit message (Collapse)Author
2024-02-11Bugfix for string literals and add support for printing patterns withBruce Hill
--verbose
2023-05-06Use tagged union style for extra safety and concisionBruce Hill
2022-11-07Use `#pragma once`Bruce Hill
2022-10-26MicrooptimizationsBruce Hill
2022-05-14Lib install stuffBruce Hill
2022-05-12Split backref/named captures into separate concepts for performanceBruce Hill
reasons.
2022-05-02Updated Make rules so default is `bp`Bruce Hill
2022-04-30Added tagged definitions: `foo:: blah`Bruce Hill
2022-04-30Simplified things by passing a def argument to next_match instead ofBruce Hill
chaining defs together. Also simplified `..` by just using a lookahead instead of retconning it. Immutability invariants are now enforced better.
2022-04-21Made NULL end values default to strlen()Bruce Hill
2021-10-02Fix for left recursion error due to wrong contextBruce Hill
2021-09-27Removed definitions as a separate type and instead encode that value inBruce Hill
the patterns themselves. This simplifies memory management a lot and speeds up performance.
2021-09-26Refactor of pat_t memory management to use doubly linked lists, andBruce Hill
moving the recursive freeing code from Lua/lbp.c into pattern.c
2021-09-23Patterns no longer need files.hBruce Hill
2021-09-23Patterns don't need to reference a separate `start` value anymoreBruce Hill
2021-09-23Moving pattern lifetime tracking off of files and onto its own list ofBruce Hill
allocated pats.
2021-09-23Moved type defs into their own files instead of types.hBruce Hill
2021-09-23API update: made new_pat() internal and added public bp_backref() toBruce Hill
cover that use case
2021-09-23Switched to using an optional typeBruce Hill
2021-09-21Moving cache logic into match, cleaner next_match() API, and slightlyBruce Hill
less tightly coupled UTF8 API
2021-08-28Style change: added cino=:0 (i.e. case statements on same indentation asBruce Hill
switch). Also fixed issue where $$ would fail to match with trailing newline on file
2021-08-01Changed how definitions workBruce Hill
2021-05-20Mostly working versionBruce Hill
2021-05-11Code cleanup: adding len parameter to new_pat()Bruce Hill
2021-05-10Added {word} feature and cleaned up the code some.Bruce Hill
2021-01-20Added --skip flag for skipping over patternsBruce Hill
2021-01-19Simplified code by disallowing escapes in strings and splittingBruce Hill
stringpatterns into chunks (so unescaped versions don't need to be created)
2021-01-18More static analyzer cleanup, including switching to use bools whereBruce Hill
appropriate and EXIT_SUCESS/EXIT_FAILURE
2021-01-18Static analysis part 1Bruce Hill
2021-01-17Improved argument parsing and added support for prompting user for aBruce Hill
pattern if none is provided
2021-01-15Moved pattern code into the right fileBruce Hill
2021-01-15Rename compiler -> patternBruce Hill