--- gforth/regexp.fs 2006/02/04 22:09:11 1.4 +++ gforth/regexp.fs 2006/02/25 14:01:18 1.5 @@ -42,9 +42,7 @@ 0 Value cur-class : charclass ( -- ) Create here dup to cur-class $100 dup allot erase ; : +char ( char -- ) cur-class swap +bit ; -: +ichar ( char -- ) dup toupper +char +char ; : -char ( char -- ) cur-class swap -bit ; -: -ichar ( char -- ) dup toupper -char -char ; : ..char ( start end -- ) 1+ swap ?DO I +char LOOP ; : or! ( n addr -- ) dup @ rot or swap ! ; : and! ( n addr -- ) dup @ rot and swap ! ; @@ -81,16 +79,6 @@ charclass any 0 $FF ..char #lf -char : ,=" ( addr u -- ) tuck ]] dup SLiteral $= ?LEAVE Literal + noop [[ ; : =" ( " -- ) '" parse ,=" ; immediate -[IFDEF] capscompare -: $i= ( addr1 addr2 u -- f ) tuck capscompare ; -: ,i=" ( addr u -- ) tuck ]] dup SLiteral $i= ?LEAVE Literal + noop [[ ; -: i=" ( " -- ) '" parse ,i=" ; immediate -[ELSE] -: i=" ( -- ) '" parse bounds ?DO - ]] count toupper [[ I c@ toupper ]] Literal <> ?LEAVE [[ - LOOP ; immediate -[THEN] - \ loop stack Variable loops $40 3 * cells allot