]> gitweb.factorcode.org Git - factor.git/commitdiff
regexp: remove R" R[ and R{, there are still plenty of options and better ones to...
authorDoug Coleman <doug.coleman@gmail.com>
Tue, 21 Jul 2015 23:26:40 +0000 (16:26 -0700)
committerDoug Coleman <doug.coleman@gmail.com>
Wed, 22 Jul 2015 00:33:14 +0000 (17:33 -0700)
basis/regexp/regexp.factor
extra/xkcd/xkcd.factor
extra/yaml/conversion/conversion.factor

index c0d633339066d253431379a430850259a4928fe5..699c61e4c6c9bbdf991f568259494ba9bfe2dfb4 100644 (file)
@@ -203,14 +203,11 @@ PRIVATE>
     {
         { "R/ "  "/"  }
         { "R! "  "!"  }
-        { "R\" " "\"" }
         { "R# "  "#"  }
         { "R' "  "'"  }
         { "R( "  ")"  }
         { "R@ "  "@"  }
-        { "R[ "  "]"  }
         { "R` "  "`"  }
-        { "R{ "  "}"  }
         { "R| "  "|"  }
     } swap [ subseq? not nip ] curry assoc-find drop ;
 
@@ -231,15 +228,12 @@ PRIVATE>
 PRIVATE>
 
 SYNTAX: R! CHAR: ! parsing-regexp ;
-SYNTAX: R" CHAR: " parsing-regexp ;
 SYNTAX: R# CHAR: # parsing-regexp ;
 SYNTAX: R' CHAR: ' parsing-regexp ;
 SYNTAX: R( CHAR: ) parsing-regexp ;
 SYNTAX: R/ CHAR: / parsing-regexp ;
 SYNTAX: R@ CHAR: @ parsing-regexp ;
-SYNTAX: R[ CHAR: ] parsing-regexp ;
 SYNTAX: R` CHAR: ` parsing-regexp ;
-SYNTAX: R{ CHAR: } parsing-regexp ;
 SYNTAX: R| CHAR: | parsing-regexp ;
 
 USE: vocabs.loader
index 459323176e6dac2cbce4ec10fc0c5819a620feff..d4410f32916a8e27d18551148d5bd16f01a08b04 100644 (file)
@@ -13,7 +13,7 @@ IN: xkcd
 
 : comic-image ( url -- image )
     http-get nip
-    R" http://imgs\.xkcd\.com/comics/[^\.]+\.(png|jpg)"
+    R@ http://imgs\.xkcd\.com/comics/[^\.]+\.(png|jpg)@
     first-match >string load-http-image ;
 
 : comic-image. ( url -- )
index 95cd73dc65333f70e948e44200ff575768799e57..daee389da74d0e15727abb833ea499713502664f 100644 (file)
@@ -15,16 +15,16 @@ CONSTANT: YAML_VALUE_TAG "tag:yaml.org,2002:value"
 ! http://www.yaml.org/spec/1.2/spec.html
 ! 10.3. Core Schema
 
-CONSTANT: re-null R" null|Null|NULL|~"
-CONSTANT: re-empty R" "
-CONSTANT: re-bool R" true|True|TRUE|false|False|FALSE"
-CONSTANT: re-int10 R" [-+]?[0-9]+"
-CONSTANT: re-int8 R" 0o[0-7]+"
-CONSTANT: re-int16 R" 0x[0-9a-fA-F]+"
-CONSTANT: re-number R" [-+]?(\.[0-9]+|[0-9]+(\.[0-9]*)?)([eE][-+]?[0-9]+)?"
-CONSTANT: re-infinity R" [-+]?\.(inf|Inf|INF)"
-CONSTANT: re-nan R" \.(nan|NaN|NAN)"
-CONSTANT: re-timestamp R" [0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]|[0-9][0-9][0-9][0-9]-[0-9][0-9]?-[0-9][0-9]?([Tt]|[ \t]+)[0-9][0-9]?:[0-9][0-9]:[0-9][0-9](\.[0-9]*)?([ \t]*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?))?"
+CONSTANT: re-null R/ null|Null|NULL|~/
+CONSTANT: re-empty R/ /
+CONSTANT: re-bool R/ true|True|TRUE|false|False|FALSE/
+CONSTANT: re-int10 R/ [-+]?[0-9]+/
+CONSTANT: re-int8 R/ 0o[0-7]+/
+CONSTANT: re-int16 R/ 0x[0-9a-fA-F]+/
+CONSTANT: re-number R/ [-+]?(\.[0-9]+|[0-9]+(\.[0-9]*)?)([eE][-+]?[0-9]+)?/
+CONSTANT: re-infinity R/ [-+]?\.(inf|Inf|INF)/
+CONSTANT: re-nan R/ \.(nan|NaN|NAN)/
+CONSTANT: re-timestamp R/ [0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]|[0-9][0-9][0-9][0-9]-[0-9][0-9]?-[0-9][0-9]?([Tt]|[ \t]+)[0-9][0-9]?:[0-9][0-9]:[0-9][0-9](\.[0-9]*)?([ \t]*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?))?/
 
 : resolve-normal-plain-scalar ( str -- tag )
     {
@@ -41,8 +41,8 @@ CONSTANT: re-timestamp R" [0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]|[0-9][0-9][
         [ drop YAML_STR_TAG ]
     } cond-case ;
 
-CONSTANT: re-merge R" <<"
-CONSTANT: re-value R" ="
+CONSTANT: re-merge R/ <</
+CONSTANT: re-value R/ =/
 : (resolve-mapping-key-plain-scalar) ( str -- tag )
     {
         { [ re-merge matches? ] [ YAML_MERGE_TAG ] }
@@ -87,7 +87,7 @@ CONSTANT: YAML_OMAP_TAG "tag:yaml.org,2002:omap"
 CONSTANT: YAML_PAIRS_TAG "tag:yaml.org,2002:pairs"
 CONSTANT: YAML_SET_TAG "tag:yaml.org,2002:set"
 
-: construct-bool ( str -- ? ) R" true|True|TRUE" matches? ;
+: construct-bool ( str -- ? ) R/ true|True|TRUE/ matches? ;
 
 : construct-int ( str -- n ) string>number ;
 
@@ -107,14 +107,14 @@ CONSTANT: YAML_SET_TAG "tag:yaml.org,2002:set"
 ! - months, days and hours on 1 digit
 ! preprocess to fix this mess...
 : yaml>rfc3339 ( str -- str' )
-    R" -[0-9][^0-9]" [ [ CHAR: 0 1 ] dip insert-nth ] re-replace-with
-    R" -[0-9][^0-9]" [ [ CHAR: 0 1 ] dip insert-nth ] re-replace-with
-    R" [^0-9][0-9]:" [ [ CHAR: 0 1 ] dip insert-nth ] re-replace-with
-    R" [ \t]+" " " re-replace
+    R/ -[0-9][^0-9]/ [ [ CHAR: 0 1 ] dip insert-nth ] re-replace-with
+    R/ -[0-9][^0-9]/ [ [ CHAR: 0 1 ] dip insert-nth ] re-replace-with
+    R/ [^0-9][0-9]:/ [ [ CHAR: 0 1 ] dip insert-nth ] re-replace-with
+    R/ [ \t]+/ " " re-replace
     CHAR: : over index cut CHAR: space swap remove append ;
 
 : construct-timestamp ( obj -- obj' )
-    dup R" [0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]" matches?
+    dup R/ [0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]/ matches?
     [ ymd>timestamp ] [ yaml>rfc3339 rfc3339>timestamp ] if ;
 
 TUPLE: yaml-merge ;