PHP utility collection with hybrid and fluent APIs.

βŒˆβŒ‹ βŽ‡ branch:  hybrid7 libraries


Timeline

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

11 check-ins using file logstruck.php version 80803b44cc

2015-02-23
14:21
Moved out to <a href=http://fossil.include-once.org/phrep/>separate repo</a>. Leaf check-in: 57fe1833b2 user: mario tags: trunk
2015-02-20
15:34
Introduce `preserve` pragma/state to retain file/line/output between includes. Add complex macro construction code. Safeguard basic macros against absent args. Recheck valid function names in MacroExpressions. check-in: 40155129df user: mario tags: trunk
2015-02-19
12:48
Introduce #srcout preprocessor directive for conditional source output. Split out MacroInjector functionality from MacroProcessor. Add `keep_empty` and `quiet` pragmas. Allow more spacing in MACRO(arg, list) declarations. Support ## varname concatenation in basic macros. Light reshuffling of operator precedence and operand polling for || and &&. Use proper namespace structuring for merging with `phrep.php` cmdline wrapper. check-in: a41bba31c8 user: mario tags: trunk
2015-02-18
16:27
Fix RX_DIRECTIVES multi-line string extraction, and strip <kbd>\\ NL</kbd> combo. Colorize stderr() messages, prepare for quiet mode. Split d_pragma() handler into value copying and p_hooks() callbacks. check-in: c32a30469b user: mario tags: trunk
2015-02-17
23:35
New #pragma options (dirs=/include:/path, omit=*.h, comments=1, macros=1, fail=0). Longer introduction comment. More regexps moved into const RX_* section. check-in: 5216d6be55 user: mario tags: trunk
19:05
Externalize some common macros into `defaults.ph`. (Bundle into separate repository..) Add #pragma(interpolate=regex) substitution names ("erb" and "phpp") and optional delimiters via #pragma(interpolate=regex ##( )##). Start tracking parsed line numbers. Safeguard #include against most commented-out PHP include(); statements. Shortcut find_include for absolute paths. Join tokenizer macro searching and replacement for basic+complex macros, inject [T_FUNC_C, $repl, 0] instead of literal into token stream. Add MacroExpression shortcuts for "0" and "1" literals. Fix expr->run operand order for GT/LT/E comparisions. check-in: 3a12ba3743 user: mario tags: trunk
14:32
Fix p_stderr callback and RX_DIRECTIVES alternative list. Change to weird variable name $ΒΆ instead of $state (maybe rename flags to lvl,act,end later). check-in: acded28fdd user: mario tags: trunk
07:09
Implement tokenizer and regex constant/macro replacement (incomplete). Fix condition block nesting level tracking. Rename main func to `on()`. Implement #include searching and omitting .h output. Change collected macro definitions to contain pre-parsed param names. check-in: bcf53d2741 user: mario tags: trunk
2015-02-16
20:16
Basic version, #directive preprocessing, and basic expression evaluation. No tokenization and constant / macro interpolation yet. check-in: 9dea381ebc user: mario tags: trunk
20:15
Add ArrayObject compatiblity (arrayExchange, getArrayCopy). check-in: 037bab0b64 user: mario tags: trunk
20:14
Prepare macro preprocessing build. check-in: 0627bb6e05 user: mario tags: trunk