From: Jean Privat Date: Sun, 24 May 2015 02:32:39 +0000 (-0400) Subject: lib/standard/string: introduce (an use) `plain_to_s` X-Git-Tag: v0.7.5~11^2~1 X-Git-Url: http://nitlanguage.org lib/standard/string: introduce (an use) `plain_to_s` Signed-off-by: Jean Privat --- diff --git a/lib/standard/file.nit b/lib/standard/file.nit index 1490ee7..f68bae9 100644 --- a/lib/standard/file.nit +++ b/lib/standard/file.nit @@ -1230,7 +1230,7 @@ end # Print `objects` on the standard output (`stdout`). fun printn(objects: Object...) do - sys.stdout.write(objects.to_s) + sys.stdout.write(objects.plain_to_s) end # Print an `object` on the standard output (`stdout`) and add a newline. diff --git a/lib/standard/string.nit b/lib/standard/string.nit index 2344659..aa757b7 100644 --- a/lib/standard/string.nit +++ b/lib/standard/string.nit @@ -2220,6 +2220,12 @@ redef class Collection[E] # Concatenate elements. redef fun to_s do + return plain_to_s + end + + # Concatenate element without separators + fun plain_to_s: String + do var s = new FlatBuffer for e in self do if e != null then s.append(e.to_s) return s.to_s @@ -2255,7 +2261,7 @@ end redef class Array[E] # Fast implementation - redef fun to_s + redef fun plain_to_s do var l = length if l == 0 then return "" diff --git a/src/interpreter/naive_interpreter.nit b/src/interpreter/naive_interpreter.nit index b444dd8..9708f3f 100644 --- a/src/interpreter/naive_interpreter.nit +++ b/src/interpreter/naive_interpreter.nit @@ -1629,7 +1629,7 @@ redef class ASuperstringExpr array.add(i) end var i = v.array_instance(array, v.mainmodule.object_type) - var res = v.send(v.force_get_primitive_method("to_s", i.mtype), [i]) + var res = v.send(v.force_get_primitive_method("plain_to_s", i.mtype), [i]) assert res != null return res end