Merge quoting vocab into mime.multipart
parent
4e8e39cb49
commit
b06499605c
|
@ -76,6 +76,18 @@ ERROR: end-of-stream multipart ;
|
||||||
: empty-name? ( string -- ? )
|
: empty-name? ( string -- ? )
|
||||||
{ "''" "\"\"" "" f } member? ;
|
{ "''" "\"\"" "" f } member? ;
|
||||||
|
|
||||||
|
: quote? ( ch -- ? ) "'\"" member? ;
|
||||||
|
|
||||||
|
: quoted? ( str -- ? )
|
||||||
|
{
|
||||||
|
[ length 1 > ]
|
||||||
|
[ first quote? ]
|
||||||
|
[ [ first ] [ peek ] bi = ]
|
||||||
|
} 1&& ;
|
||||||
|
|
||||||
|
: unquote ( str -- newstr )
|
||||||
|
dup quoted? [ but-last-slice rest-slice >string ] when ;
|
||||||
|
|
||||||
: save-uploaded-file ( multipart -- )
|
: save-uploaded-file ( multipart -- )
|
||||||
dup filename>> empty-name? [
|
dup filename>> empty-name? [
|
||||||
drop
|
drop
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
Doug Coleman
|
|
|
@ -1,32 +0,0 @@
|
||||||
! Copyright (C) 2009 Doug Coleman.
|
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
|
||||||
USING: help.markup help.syntax strings ;
|
|
||||||
IN: quoting
|
|
||||||
|
|
||||||
HELP: quote?
|
|
||||||
{ $values
|
|
||||||
{ "ch" "a character" }
|
|
||||||
{ "?" "a boolean" }
|
|
||||||
}
|
|
||||||
{ $description "Returns true if the character is a single or double quote." } ;
|
|
||||||
|
|
||||||
HELP: quoted?
|
|
||||||
{ $values
|
|
||||||
{ "str" string }
|
|
||||||
{ "?" "a boolean" }
|
|
||||||
}
|
|
||||||
{ $description "Returns true if a string is surrounded by matching single or double quotes as the first and last characters." } ;
|
|
||||||
|
|
||||||
HELP: unquote
|
|
||||||
{ $values
|
|
||||||
{ "str" string }
|
|
||||||
{ "newstr" string }
|
|
||||||
}
|
|
||||||
{ $description "Removes a pair of matching single or double quotes from a string." } ;
|
|
||||||
|
|
||||||
ARTICLE: "quoting" "Quotation marks"
|
|
||||||
"The " { $vocab-link "quoting" } " vocabulary is for removing quotes from a string." $nl
|
|
||||||
"Removing quotes:"
|
|
||||||
{ $subsection unquote } ;
|
|
||||||
|
|
||||||
ABOUT: "quoting"
|
|
|
@ -1,10 +0,0 @@
|
||||||
! Copyright (C) 2009 Doug Coleman.
|
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
|
||||||
USING: tools.test quoting ;
|
|
||||||
IN: quoting.tests
|
|
||||||
|
|
||||||
|
|
||||||
[ "abc" ] [ "'abc'" unquote ] unit-test
|
|
||||||
[ "abc" ] [ "\"abc\"" unquote ] unit-test
|
|
||||||
[ "'abc" ] [ "'abc" unquote ] unit-test
|
|
||||||
[ "abc'" ] [ "abc'" unquote ] unit-test
|
|
|
@ -1,16 +0,0 @@
|
||||||
! Copyright (C) 2009 Doug Coleman.
|
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
|
||||||
USING: combinators.short-circuit kernel math sequences strings ;
|
|
||||||
IN: quoting
|
|
||||||
|
|
||||||
: quote? ( ch -- ? ) "'\"" member? ;
|
|
||||||
|
|
||||||
: quoted? ( str -- ? )
|
|
||||||
{
|
|
||||||
[ length 1 > ]
|
|
||||||
[ first quote? ]
|
|
||||||
[ [ first ] [ peek ] bi = ]
|
|
||||||
} 1&& ;
|
|
||||||
|
|
||||||
: unquote ( str -- newstr )
|
|
||||||
dup quoted? [ but-last-slice rest-slice >string ] when ;
|
|
Loading…
Reference in New Issue