]> gitweb.factorcode.org Git - factor.git/commitdiff
multiline: remove HEREDOC:
authorJohn Benediktsson <mrjbq7@gmail.com>
Fri, 19 Mar 2021 03:50:02 +0000 (20:50 -0700)
committerJohn Benediktsson <mrjbq7@gmail.com>
Fri, 19 Mar 2021 03:50:02 +0000 (20:50 -0700)
It wasn't used and our new multiline strings are better.

basis/multiline/multiline-docs.factor
basis/multiline/multiline-tests.factor
basis/multiline/multiline.factor
misc/vim/syntax/factor.vim

index fcd069928774c3ee43941bd3da06e426ea7527ac..f8b64240ebbd65be070203d416e8b3ab027a558b 100644 (file)
@@ -12,23 +12,7 @@ HELP: /*
     { $example "USING: multiline ;"
            "/* I think that I shall never see"
            "   A poem lovely as a tree. */"
-            ""
-    }
-} ;
-
-HELP: HEREDOC:
-{ $syntax "HEREDOC: marker\n...text...\nmarker" }
-{ $values { "marker" "a word (token)" } { "text" "arbitrary text" } { "value" string } }
-{ $description "Returns a string delimited by an arbitrary user-defined token. This delimiter must be exactly the text beginning at the first non-blank character after " { $link POSTPONE: HEREDOC: } " until the end of the line containing " { $link POSTPONE: HEREDOC: } ". Text is captured until a line is found containing exactly this delimiter string." }
-{ $warning "Whitespace is significant." }
-{ $examples
-    { $example "USING: multiline prettyprint ;"
-               "HEREDOC: END\nx\nEND\n."
-               "\"x\\n\""
-    }
-    { $example "USING: multiline prettyprint sequences ;"
-               "2 5 HEREDOC: zap\nfoo\nbar\nzap\nsubseq ."
-               "\"o\\nb\""
+           ""
     }
 } ;
 
@@ -41,7 +25,12 @@ ARTICLE: "multiline" "Multiline"
 "Multiline strings:"
 { $subsections
     POSTPONE: STRING:
-    POSTPONE: HEREDOC:
+    POSTPONE: [[
+    POSTPONE: [=[
+    POSTPONE: [==[
+    POSTPONE: [===[
+    POSTPONE: [====[
+    POSTPONE: [=====[
 }
 "Multiline comments:"
 { $subsections POSTPONE: /* }
index dbc2688f4e26d1105a5a14402364f5232e6327d3..e7eedf27a9da55bc0732fe3cb15902b2f5ae8061 100644 (file)
@@ -9,68 +9,6 @@ bar
 
 { "foo\nbar\n" } [ test-it ] unit-test
 
-
-! HEREDOC:
-
-{ "foo\nbar\n" } [ HEREDOC: END
-foo
-bar
-END
-] unit-test
-
-{ "" } [ HEREDOC: END
-END
-] unit-test
-
-{ " END\n" } [ HEREDOC: END
- END
-END
-] unit-test
-
-{ "\n" } [ HEREDOC: END
-
-END
-] unit-test
-
-{ "x\n" } [ HEREDOC: END
-x
-END
-] unit-test
-
-{ "x\n" } [ HEREDOC:       END
-x
-END
-] unit-test
-
-! there's a space after xyz
-{ "xyz \n" } [ HEREDOC: END
-xyz 
-END
-] unit-test
-
-{ "} ! * # \" «\n" } [ HEREDOC: END
-} ! * # " «
-END
-] unit-test
-
-{ 21 "foo\nbar\n" " HEREDOC: FOO\n FOO\n" 22 } [ 21 HEREDOC: X
-foo
-bar
-X
-HEREDOC: END
- HEREDOC: FOO
- FOO
-END
-22 ] unit-test
-
-{ "lol\n xyz\n" }
-[
-HEREDOC: xyz
-lol
- xyz
-xyz
-] unit-test
-
 /*
 <<
 SYNTAX: MULTILINE-LITERAL: parse-here suffix! ;
index ce5abbeac5ce1b17ef9836c45fbf6407bcf07414..c36e6c49ce952ee02e20466ec86beca1a725c430 100644 (file)
@@ -61,22 +61,6 @@ SYNTAX: STRING:
 : advance-same-line ( lexer text -- )
     length [ + ] curry change-column drop ;
 
-:: (parse-til-line-begins) ( begin-text lexer -- )
-    lexer still-parsing? [
-        lexer line-text>> begin-text sequence= [
-            lexer begin-text advance-same-line
-        ] [
-            lexer line-text>> % CHAR: \n ,
-            lexer next-line
-            begin-text lexer (parse-til-line-begins)
-        ] if
-    ] [
-        begin-text bad-heredoc
-    ] if ;
-
-: parse-til-line-begins ( begin-text lexer -- seq )
-    [ (parse-til-line-begins) ] "" make ;
-
 PRIVATE>
 
 : parse-multiline-string ( end-text -- str )
@@ -84,14 +68,6 @@ PRIVATE>
 
 SYNTAX: /* "*/" parse-multiline-string drop ;
 
-SYNTAX: HEREDOC:
-    lexer get {
-        [ skip-blank ]
-        [ rest-of-line ]
-        [ next-line ]
-        [ parse-til-line-begins ]
-    } cleave suffix! ;
-
 SYNTAX: [[ "]]" parse-multiline-string suffix! ;
 SYNTAX: [=[ "]=]" parse-multiline-string suffix! ;
 SYNTAX: [==[ "]==]" parse-multiline-string suffix! ;
index 4fece820b1366ac35a988b4a73ca885ea1129c36..ea58a16c3efb2ec831581b63bb69246a9fbc9ed4 100644 (file)
@@ -152,7 +152,6 @@ syn region  factorString            matchgroup=factorStringDelims   start=/\v<"/
 syn region  factorString            matchgroup=factorStringDelims   start=/\v<"""/               skip=/\v\\"/ end=/\v"""/         contains=factorEscape
 syn region  factorString            matchgroup=factorStringDelims   start=/\v<[^[:blank:]"]+"/   skip=/\v\\"/ end=/\v"/           contains=factorEscape
 syn region  factorString            matchgroup=factorStringDelims   start=/\v\[\z(\=*)\[/                     end=/\]\z1\]/       contains=factorEscape
-syn region  factorString            matchgroup=factorStringDelims   start=/\v<HEREDOC:\s+\z(.*)$>/            end=/\v^\z1$>/
 syn region  factorString            matchgroup=factorStringDelims   start=/\v<[^[\][:blank:]]+\[\z(\=*)\[>/   end=/\v\]\z1\]/
 
 syn region  factorNamedString       matchgroup=factorNamedStringDelims   start=/\v<STRING:\s+\S+$>/   end=/\v^<;>$/  contains=factorEscape