PHP utility collection with hybrid and fluent APIs.

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


Timeline

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

49 check-ins

2015-02-23
14:21
[57fe1833b2] Leaf: Moved out to <a href=http://fossil.include-once.org/phrep/>separate repo</a>. (user: mario, tags: trunk)
2015-02-20
15:34
[40155129df] 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. (user: mario, tags: trunk)
2015-02-19
12:48
[a41bba31c8] 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. (user: mario, tags: trunk)
2015-02-18
16:27
[c32a30469b] 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. (user: mario, tags: trunk)
2015-02-17
23:35
[5216d6be55] New #pragma options (dirs=/include:/path, omit=*.h, comments=1, macros=1, fail=0). Longer introduction comment. More regexps moved into const RX_* section. (user: mario, tags: trunk)
19:05
[3a12ba3743] 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. (user: mario, tags: trunk)
14:32
[acded28fdd] 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). (user: mario, tags: trunk)
07:09
[bcf53d2741] 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. (user: mario, tags: trunk)
2015-02-16
20:16
[9dea381ebc] Basic version, #directive preprocessing, and basic expression evaluation. No tokenization and constant / macro interpolation yet. (user: mario, tags: trunk)
20:15
[037bab0b64] Add ArrayObject compatiblity (arrayExchange, getArrayCopy). (user: mario, tags: trunk)
20:14
[0627bb6e05] Prepare macro preprocessing build. (user: mario, tags: trunk)
2015-01-13
18:50
[5cd584fcc8] Separate Ε‚::$app to be static, but Ε‚()->section= and $min_prio to be logger-group specific property. Reorder class defaults, compact introduction text. Fix error handler context usage as :vars, apply :backtrace manually. (user: mario, tags: trunk)
18:47
[2734b95caa] Obsolete/unused bindings for Inspekt (user: mario, tags: trunk)
2015-01-07
15:32
[1cfd351bc9] Silently return NULL for absent ->column data from first result row. (user: mario, tags: trunk)
2015-01-06
17:29
[b453cef6ba] Remove debugging examples. (user: mario, tags: trunk)
14:04
[e71d6c53c0] Cleaned up intro documentation, externalized and detailed in Wiki now. Prepare tree grouping via `:p`, order injector calls last, fix :version meta extractor. (user: mario, tags: trunk)
14:02
[05ee16deb6] Get rid of tree.php. (user: mario, tags: trunk)
2015-01-05
07:48
[5ee688036b] Highly experimental logging API and SQLite backend. Provides parameterized and hybrid function signature, allows storing array structures with grouped events. State: pretty basic prototype. (user: mario, tags: trunk)
07:46
[2915ca3714] Add newline normalizer `->nl` (user: mario, tags: trunk)
2014-12-28
16:33
[9d07f1d499] PHP bundles to DEB/RPM conversion now handled/superseded by <a href="http://fossil.include-once.org/xpm/wiki/src">`xpm -s src`</a>. (user: mario, tags: trunk)
16:31
[e6637f6024] Obsolete. db() is just used as plain PDO wrapper anyway. (user: mario, tags: trunk)
16:30
[ef20a08626] Array key traversion. (No idea why I kept this here, not related to the rest of h7.) (user: mario, tags: trunk)
16:24
[39a0feb20f] Fix template() description. State: incomplete. (Had a slightly more clever version lounging around somewhere..) (user: mario, tags: trunk)
2014-08-14
07:43
[d467a4be29] Relaxed _http() filter to allow leading numerics in host name, Added missing `p` tag in _strip_markup(). (user: mario, tags: trunk)
07:41
[f9ecfa3ce9] ASCII documentation box for db() placeholder syntax and uses. (user: mario, tags: trunk)
07:39
[49b2714f5f] Added static $defaults[] array instead of built-in constructor calls. Introduces ->assert() to test CURL/HTTP properties after ->exec(), and possibly drop the result on mismatches. (user: mario, tags: trunk)
07:38
[4b0715e805] Restructured directory layout. (user: mario, tags: trunk)
2014-07-27
16:04
[8020d1afd4] Document :* expression args wrapping, allow literal SQL parts or param arrays for rejoining. (user: mario, tags: trunk)
2014-07-21
14:10
[0612228e65] Refixed `:key` quoting for expand_assoc_* callback (user: mario, tags: trunk)
2014-07-19
18:44
[dbeeffd82d] Restructured into ->fold() and ->expand_syntax() handlers; allowed `:*` placeholder to contain nested expressions. (user: mario, tags: trunk)
16:04
[461f07a703] New placeholder :* for minimal query interpolation ["AND x IN (??)", $params] (user: mario, tags: trunk)
2014-07-17
14:09
[dbd69cf2a0] Different rx delimiter for strip_markup. (user: mario, tags: trunk)
14:08
[585c3b9373] Allow more params for ->into() wrapping. (user: mario, tags: trunk)
2014-07-11
09:26
[7048ca4be9] <b>db()</b> now split up into hybrid constructor and dispatcher, and PDO db_wrap{} just for extended placeholders; betters docs inline. (user: mario, tags: trunk)
09:22
[9935d3cfac] Introduced <b>_slug()</b> and <b>_strip_markup()</b> filters. Prepated for better doc comments. (user: mario, tags: trunk)
2014-06-27
17:38
[e42563785e] Permit static filter invocation `input::text($str)` without underscore prefix, allow ->has() and ->no() to probe a list of key names, extra parameter/argument support for bound global functions, fixed _disallow Exception syntax, and make _length() now not only to slice but also declare a minimum string length. (user: mario, tags: trunk)
2014-06-18
15:54
[23a6b15a36] Simplified __filter list back to also allow plain callback names instead of [name, args[]]. Restructured filter() varname checks. (user: mario, tags: trunk)
2014-06-17
02:27
[d63339146a] Permit $_SERVER->method(["name"]) syntax as well (varnames get unpacked from single-entry array). (user: mario, tags: trunk)
2014-03-21
21:45
[3a4f2387a0] Introduce ellipse … syntax for merging literal params into filter method names. (user: mario, tags: trunk)
2014-03-17
14:47
[355bb2a455] Close all curl_multi{} handles implicitly in ->exec() calls. (user: mario, tags: trunk)
14:46
[2025631d71] Allows tree($array)->{'2,0,3'} traversal access. (user: mario, tags: trunk)
2014-03-09
02:17
[3368c55fe3] Allow input{} to utilize Inspekt filters. (user: mario, tags: trunk)
02:15
[dcaf21a373] Trivial AR table handler building. (user: mario, tags: trunk)
02:15
[a5113eb7a6] Converts php plugins into .deb or .rpm packages (using epm currently) (user: mario, tags: trunk)
02:12
[31f60c3bdd] Templating interface concept. (user: mario, tags: trunk)
02:11
[d367a57c9d] Wrapper for superglobal input array $_GET, $_POST, $_REQUEST, $_SERVER which add simple to use and fine-grained filtering functions. (user: mario, tags: trunk)
02:11
[b5c377d66f] Simple db() interface with support for extended placeholders ?? ?: ?? :& :| :, for array binding. (user: mario, tags: trunk)
02:06
[b95a254f4c] fluent curl{} and curl_multi{} wrapper (user: mario, tags: trunk)
02:02
[da152c56bc] initial empty check-in (user: mario, tags: trunk)