summaryrefslogtreecommitdiff
path: root/src/paca.mjs (unfollow)
Commit message (Expand)AuthorFilesLines
2025-08-01src/paca.mjs: Improve implementation of interpretMetacharactersHEADmainEuAndreh1-13/+48
2025-07-31Makefile: Install like a Node.js packageEuAndreh2-6/+10
2025-07-20tests/paca.mjs: Add WIP testsEuAndreh1-0/+9
2025-07-20src/paca.mjs: Rename buildDFA -> toDFAEuAndreh2-22/+25
2025-07-20src/paca.mjs: Support returning multiple options from `performTransition()`EuAndreh1-5/+6
2025-07-20Add initial support for caret and dollar metacharactersEuAndreh2-22/+200
2025-07-17.gitignore: Remove trailing slash from node_modules ruleEuAndreh1-1/+1
2025-07-17src/paca.mjs: Rename {start,end}ID => {start,end}EuAndreh1-44/+42
2025-07-17Do away with the "nextID" attributeEuAndreh2-53/+10
2025-07-16Support searching in the NFA using the metacharacters.EuAndreh2-1/+123
2025-07-16Compress character class when compiling NFA.EuAndreh2-3/+174
2025-07-16Build NFA nodes for "." and "class" metacharactersEuAndreh2-38/+305
2025-07-16Differentiate an "operator" from a "meta" characterEuAndreh2-24/+72
2025-07-15Only tolerate escaping of special charsEuAndreh2-38/+59
2025-07-15Support tokenizing `.` wildcard operator.EuAndreh2-5/+29
2025-07-15Support tokenizing `^` and `$` anchorsEuAndreh2-1/+242
2025-07-15tests/paca.mjs (test_shouldConcat): Also hoist import, definition and positio...EuAndreh1-35/+35
2025-07-15tests/paca.mjs (test_compileNFA): Add test case for empty regexEuAndreh1-0/+14
2025-07-15src/paca.mjs (PRECEDENCE): Add "range" and "class" keysEuAndreh1-0/+2
2025-07-15tests/paca.mjs (test_escapingStateStep): Add tests for `escapingStateStep()`EuAndreh1-0/+36
2025-07-15Use `shouldConcat()` in decision of `escapingStateSte()`EuAndreh2-11/+15
2025-07-15Support tokenizing character class expressions [a-z]EuAndreh2-5/+349
2025-07-13tests/paca.mjs (test_rangeStateStep): Finish test cases for rangeStateStepEuAndreh1-0/+139
2025-07-13src/paca.mjs (rangeStateStep): Fix typo in SyntaxError messageEuAndreh1-1/+1
2025-07-13src/paca.mjs (rangeStateStep): Refine indentation and alignmentEuAndreh1-3/+3
2025-07-13src/paca.mjs ({escaping,range}StateStep): Add leading underscore to ignored argsEuAndreh1-2/+2
2025-07-13src/paca.mjs (rangeStateStep): Return ValueError when range number decreasesEuAndreh1-1/+2
2025-07-13Add first test for `rangeStateStep()`EuAndreh1-0/+17
2025-07-13Hoist `numFromDigits()` before its usageEuAndreh2-22/+22
2025-07-13Add "[" to the possible characters of TRANSITION_FNS.EuAndreh2-0/+30
2025-07-13Add simple test for TRANSITION_FNSEuAndreh2-2/+35
2025-07-12Revert "src/paca.mjs: Temporarily export internal functions"EuAndreh1-4/+4
2025-07-12src/paca.mjs: Temporarily export internal functionsEuAndreh1-4/+4
2025-07-11src/paca.mjs (tokenizeRegexStep): Simplify bodyEuAndreh1-105/+127
2025-07-11tests/paca.mjs (test_tokenizeRegexStep): Simplify table valuesEuAndreh1-704/+322
2025-07-11src/paca.mjs (tokenizeRegexStep): Fix missing concat when escapingEuAndreh1-5/+8
2025-07-11tests/paca.mjs: Add tests for numFromDigits()EuAndreh1-0/+17
2025-07-11src/paca.mjs: Remove calls to arr.concat([]) with unneeded wrapping singleton...EuAndreh1-14/+6
2025-07-11src/paca.mjs (tokenizeRegexStep): Support tokenizing range exps {m,n}EuAndreh2-2/+638
2025-07-11src/paca.mjs (tokenizeRegexStep): Include `context` key in reduced stateEuAndreh2-121/+152
2025-07-11src/paca.mjs: Move error detection from tokenizeRegexStep => tokenizeRegexEuAndreh2-26/+34
2025-07-11tests/paca.mjs (test_tokenizeRegexStep): Compute `char` and `index`EuAndreh1-20/+7
2025-07-11src/paca.mjs: Remove unused repeat(3) importEuAndreh1-1/+1
2025-07-09Makefile: Minor fixes of indentation and alignmentEuAndreh1-3/+3
2025-07-09Finish implementation of unit testsEuAndreh2-31/+881
2025-07-07Implement v0 version of NFA and DFA; WIP testsEuAndreh6-0/+1898