[macruby-changes] [1750] MacRuby/branches/experimental
source_changes at macosforge.org
source_changes at macosforge.org
Fri Jun 5 14:11:09 PDT 2009
Revision: 1750
http://trac.macosforge.org/projects/ruby/changeset/1750
Author: lsansonetti at apple.com
Date: 2009-06-05 14:11:09 -0700 (Fri, 05 Jun 2009)
Log Message:
-----------
String#{ljust,rjust,center}: fixed remaining spec failures
Modified Paths:
--------------
MacRuby/branches/experimental/string.c
Removed Paths:
-------------
MacRuby/branches/experimental/spec/frozen/tags/macruby/core/string/center_tags.txt
MacRuby/branches/experimental/spec/frozen/tags/macruby/core/string/ljust_tags.txt
MacRuby/branches/experimental/spec/frozen/tags/macruby/core/string/rjust_tags.txt
Deleted: MacRuby/branches/experimental/spec/frozen/tags/macruby/core/string/center_tags.txt
===================================================================
--- MacRuby/branches/experimental/spec/frozen/tags/macruby/core/string/center_tags.txt 2009-06-05 20:02:14 UTC (rev 1749)
+++ MacRuby/branches/experimental/spec/frozen/tags/macruby/core/string/center_tags.txt 2009-06-05 21:11:09 UTC (rev 1750)
@@ -1,3 +0,0 @@
-fails:String#center with length, padding returns a new string of specified length with self centered and padded with padstr
-fails:String#center with length, padding calls #to_str to convert padstr to a String
-fails:String#center with length, padding raises a TypeError when padstr can't be converted to a string
Deleted: MacRuby/branches/experimental/spec/frozen/tags/macruby/core/string/ljust_tags.txt
===================================================================
--- MacRuby/branches/experimental/spec/frozen/tags/macruby/core/string/ljust_tags.txt 2009-06-05 20:02:14 UTC (rev 1749)
+++ MacRuby/branches/experimental/spec/frozen/tags/macruby/core/string/ljust_tags.txt 2009-06-05 21:11:09 UTC (rev 1750)
@@ -1,3 +0,0 @@
-fails:String#ljust with length, padding returns a new string of specified length with self left justified and padded with padstr
-fails:String#ljust with length, padding tries to convert padstr to a string using to_str
-fails:String#ljust with length, padding raises a TypeError when padstr can't be converted
Deleted: MacRuby/branches/experimental/spec/frozen/tags/macruby/core/string/rjust_tags.txt
===================================================================
--- MacRuby/branches/experimental/spec/frozen/tags/macruby/core/string/rjust_tags.txt 2009-06-05 20:02:14 UTC (rev 1749)
+++ MacRuby/branches/experimental/spec/frozen/tags/macruby/core/string/rjust_tags.txt 2009-06-05 21:11:09 UTC (rev 1750)
@@ -1,3 +0,0 @@
-fails:String#rjust with length, padding returns a new string of specified length with self right justified and padded with padstr
-fails:String#rjust with length, padding tries to convert padstr to a string using to_str
-fails:String#rjust with length, padding raises a TypeError when padstr can't be converted
Modified: MacRuby/branches/experimental/string.c
===================================================================
--- MacRuby/branches/experimental/string.c 2009-06-05 20:02:14 UTC (rev 1749)
+++ MacRuby/branches/experimental/string.c 2009-06-05 21:11:09 UTC (rev 1750)
@@ -4556,7 +4556,8 @@
CFMakeCollectable((CFTypeRef)pad);
}
CFStringInsert((CFMutableStringRef)str, index, (CFStringRef)pad);
- width -= padwidth;
+ width -= padwidth;
+ index += padwidth;
}
while (width > 0);
}
@@ -4569,13 +4570,6 @@
rb_scan_args(argc, argv, "11", &w, &pad);
width = NUM2LONG(w);
- n = CFStringGetLength((CFStringRef)str);
-
- str = rb_str_new3(str);
- if (width < 0 || width <= n) {
- return str;
- }
- width -= n;
if (NIL_P(pad)) {
pad = rb_str_new(" ", 1);
@@ -4590,6 +4584,14 @@
rb_raise(rb_eArgError, "zero width padding");
}
+ n = CFStringGetLength((CFStringRef)str);
+
+ str = rb_str_new3(str);
+ if (width < 0 || width <= n) {
+ return str;
+ }
+ width -= n;
+
if (jflag == 'c') {
rb_str_justify0(str, pad, ceil(width / 2.0), padwidth, n);
rb_str_justify0(str, pad, floor(width / 2.0), padwidth, 0);
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-changes/attachments/20090605/ecd2c26b/attachment.html>
More information about the macruby-changes
mailing list