X-Git-Url: https://gitweb.factorcode.org/gitweb.cgi?p=factor.git;a=blobdiff_plain;f=basis%2Fxmode%2Fmarker%2Fmarker.factor;h=32fae3c3245f06b1b39eddd9a2e12a10fd6cf45a;hp=4ecfa9b7963cd0fbde4d8e869d8d2e5398f48c73;hb=b0badd157101d4b6b184f06726b456a00171b801;hpb=c0f0342d9ae9197401af909d86204c2d1f89559a diff --git a/basis/xmode/marker/marker.factor b/basis/xmode/marker/marker.factor index 4ecfa9b796..32fae3c324 100644 --- a/basis/xmode/marker/marker.factor +++ b/basis/xmode/marker/marker.factor @@ -102,7 +102,7 @@ M: regexp text-matches? : match-group-regexp ( regexp n -- skip-regexp match-regexp ) [ [ options>> options>string ] [ raw>> ] bi ] dip CHAR: ( pick nth-index cut CHAR: ) over index 1 + head - rot '[ H{ } [ _ ] cache ] bi@ ; + rot '[ _ H{ } [ ] 2cache ] bi@ ; : skip-first-match ( match regexp -- tailseq ) first-match [ seq>> ] [ to>> ] bi tail ; @@ -171,14 +171,14 @@ PRIVATE> DEFER: get-rules -: get-always-rules ( vector/f ruleset -- vector/f ) - f swap rules>> at ?push-all ; +: get-always-rules ( ruleset -- vector/f ) + f swap rules>> at ; -: get-char-rules ( vector/f char ruleset -- vector/f ) - [ ch>upper ] dip rules>> at ?push-all ; +: get-char-rules ( char ruleset -- vector/f ) + [ ch>upper ] dip rules>> at ; : get-rules ( char ruleset -- seq ) - [ f ] 2dip [ get-char-rules ] keep get-always-rules ; + [ get-char-rules ] [ get-always-rules ] bi [ append ] when* ; GENERIC: handle-rule-start ( match-count rule -- )