modern: fix rewriting backslashes and whitespace.

modern-harvey3-triple
Doug Coleman 2018-08-07 09:55:26 -04:00
parent c3f12c945d
commit 1b8b366444
2 changed files with 3 additions and 3 deletions

View File

@ -334,7 +334,7 @@ ERROR: no-backslash-payload n string slice ;
! \ foo, M\ foo ! \ foo, M\ foo
dup [ char: \\ = ] count-tail dup [ char: \\ = ] count-tail
'[ '[
_ [ skip-blank-from slice-til-whitespace drop ] replicate _ [ slice-til-not-whitespace drop [ slice-til-whitespace drop ] dip swap 2array ] replicate
ensure-no-false ensure-no-false
dup [ no-backslash-payload ] unless dup [ no-backslash-payload ] unless
] dip swap 2array ] dip swap 2array

View File

@ -24,9 +24,9 @@ CONSTRUCTOR: <renamed> renamed ( slice string -- obj ) ;
trim-before-newline io:write ; trim-before-newline io:write ;
GENERIC: write-literal* ( last obj -- last' ) GENERIC: write-literal* ( last obj -- last' )
M: slice write-literal* [ write-whitespace ] [ write ] [ ] tri ; M: slice write-literal* write ; ! [ write-whitespace ] [ write ] [ ] tri ;
M: array write-literal* [ write-literal* ] each ; M: array write-literal* [ write-literal* ] each ;
M: renamed write-literal* [ slice>> write-whitespace ] [ string>> write ] [ slice>> ] tri ; ! for refactoring ! M: renamed write-literal* [ slice>> write-whitespace ] [ string>> write ] [ slice>> ] tri ; ! for refactoring
M: string write-literal* write ; M: string write-literal* write ;
DEFER: map-literals DEFER: map-literals