[Gd-chatter] r11721 - in trunk/libraries: network/koala/sources/examples/code-browser regular-expressions regular-expressions/tests uri
cgay at gwydiondylan.org
cgay at gwydiondylan.org
Sat Mar 1 12:41:49 CET 2008
Author: cgay
Date: Sat Mar 1 12:41:48 2008
New Revision: 11721
Modified:
trunk/libraries/network/koala/sources/examples/code-browser/main.dylan
trunk/libraries/regular-expressions/interface.dylan
trunk/libraries/regular-expressions/tests/api.dylan
trunk/libraries/uri/uri.dylan
Log:
job: koala
Restore regex-replace argument ordering.
Modified: trunk/libraries/network/koala/sources/examples/code-browser/main.dylan
==============================================================================
--- trunk/libraries/network/koala/sources/examples/code-browser/main.dylan (original)
+++ trunk/libraries/network/koala/sources/examples/code-browser/main.dylan Sat Mar 1 12:41:48 2008
@@ -112,11 +112,9 @@
define function markup-dylan-source(source :: <string>)
=> (processed-source :: <string>);
- regex-replace(">",
- regex-replace("<",
- regex-replace("&", source, "&"),
- "<"),
- ">");
+ regex-replace(regex-replace(regex-replace(source, "&", "&"),
+ "<", "<"),
+ ">", ">");
end function markup-dylan-source;
//XXX: refactor this into the specific tags - each tag which may be a reference
Modified: trunk/libraries/regular-expressions/interface.dylan
==============================================================================
--- trunk/libraries/regular-expressions/interface.dylan (original)
+++ trunk/libraries/regular-expressions/interface.dylan Sat Mar 1 12:41:48 2008
@@ -196,7 +196,7 @@
end function make-regex-positioner;
define generic regex-replace
- (regex :: <object>, big :: <string>, new-substring :: <string>,
+ (big :: <string>, old :: <object>, new :: <string>,
#key start :: <integer>,
end: epos :: <integer>,
count :: false-or(<integer>),
@@ -204,13 +204,13 @@
=> (new-string :: <string>);
define method regex-replace
- (regex :: <string>, big :: <string>, new-substring :: <string>,
+ (big :: <string>, old :: <string>, new :: <string>,
#key count :: false-or(<integer>),
start :: <integer> = 0,
end: epos :: <integer> = big.size,
case-sensitive :: <boolean> = #t)
=> (new-string :: <string>)
- regex-replace(compile-regex(regex), big, new-substring,
+ regex-replace(big, compile-regex(old), new,
start: start,
end: epos,
count: count,
@@ -218,15 +218,15 @@
end method regex-replace;
define method regex-replace
- (regex :: <regex>, big :: <string>, new-substring :: <string>,
+ (big :: <string>, old :: <regex>, new :: <string>,
#key count :: false-or(<integer>),
start :: <integer> = 0,
end: epos :: <integer> = big.size,
case-sensitive :: <boolean> = #t)
=> (new-string :: <string>)
let positioner
- = make-regex-positioner(regex, case-sensitive: case-sensitive);
- do-replacement(positioner, new-substring, big, start,
+ = make-regex-positioner(old, case-sensitive: case-sensitive);
+ do-replacement(positioner, new, big, start,
epos, count, #t);
end method regex-replace;
Modified: trunk/libraries/regular-expressions/tests/api.dylan
==============================================================================
--- trunk/libraries/regular-expressions/tests/api.dylan (original)
+++ trunk/libraries/regular-expressions/tests/api.dylan Sat Mar 1 12:41:48 2008
@@ -25,7 +25,7 @@
(<object>, <string>, #"key", #"start", #"end", #"case-sensitive")
=> (false-or(<string>), #"rest");
sealed generic-function regex-replace
- (<object>, <string>, <string>, #"key", #"start", #"end", #"case-sensitive", #"count")
+ (<string>, <object>, <string>, #"key", #"start", #"end", #"case-sensitive", #"count")
=> (<string>);
sealed generic-function regex-search
(<object>, <string>, #"key", #"anchored", #"start", #"end")
@@ -137,20 +137,20 @@
define regular-expressions function-test regex-replace ()
let big-string = "The rain in spain and some other text";
check-no-errors("regex-replace with regex pattern",
- regex-replace(compile-regex("the (.*) in (\\w*\\b)"),
- big-string,
+ regex-replace(big-string,
+ compile-regex("the (.*) in (\\w*\\b)"),
"\\2 has its \\1"));
check-equal("regex-replace #1",
- regex-replace("the (.*) in (\\w*\\b)", big-string, "\\2 has its \\1"),
- "spain has its rain and some other text");
+ regex-replace("a or b", "(o)(r)", "\\2\\1"),
+ "a ro b");
check-equal("regex-replace #2",
- regex-replace("in", big-string, "out"),
+ regex-replace(big-string, "in", "out"),
"The raout out spaout and some other text");
check-equal("regex-replace #3",
- regex-replace("in", big-string, "out", count: 2),
+ regex-replace(big-string, "in", "out", count: 2),
"The raout out spain and some other text");
check-equal("regex-replace #4",
- regex-replace("in", big-string, "out", start: 8, end: 15),
+ regex-replace(big-string, "in", "out", start: 8, end: 15),
"The rain out spain and some other text");
end function-test regex-replace;
@@ -226,9 +226,13 @@
//---*** Fill this in...
end function-test group-start;
-define regular-expressions function-test match-groups ()
+define regular-expressions function-test groups-by-name ()
//---*** Fill this in...
-end function-test match-groups;
+end function-test groups-by-name;
+
+define regular-expressions function-test groups-by-position ()
+ //---*** Fill this in...
+end function-test groups-by-position;
define regular-expressions function-test match-group ()
//---*** Fill this in...
Modified: trunk/libraries/uri/uri.dylan
==============================================================================
--- trunk/libraries/uri/uri.dylan (original)
+++ trunk/libraries/uri/uri.dylan Sat Mar 1 12:41:48 2008
@@ -70,7 +70,7 @@
= regex-search-strings($uri-regex, uri);
// inside generic method to save code duplication
if (class == <url> & query)
- query := regex-replace("\\+", query, " ");
+ query := regex-replace(query, "\\+", " ");
end if;
if (scheme) scheme := percent-decode(scheme); end;
if (userinfo) userinfo := percent-decode(userinfo); end;
@@ -127,7 +127,9 @@
if (qvalue)
if (replacements)
for (replacement in replacements)
- qvalue := regex-replace(head(replacement), qvalue, tail(replacement));
+ let old = head(replacement);
+ let new = tail(replacement);
+ qvalue := regex-replace(qvalue, old, new);
end for;
end if;
qvalue := percent-decode(qvalue);
More information about the chatter
mailing list