on master help sign in
Use JS.fromList and JS.toList when appropriate
cbd136dEvan Czaplicki
libraries/Native/String.js+6−5
@@ -7,6 +7,7 @@ Elm.Native.String.make = function(elm) {
7 return elm.Native.String.values = Elm.Native.String.values;
7 return elm.Native.String.values = Elm.Native.String.values;
8
8
9 var Maybe = Elm.Maybe.make(elm);
9 var Maybe = Elm.Maybe.make(elm);
10+ var JS = Elm.JavaScript.make(elm);
10 var Tuple2 = Elm.Native.Utils.make(elm).Tuple2;
11 var Tuple2 = Elm.Native.Utils.make(elm).Tuple2;
11
12
12 function isEmpty(str) {
13 function isEmpty(str) {
@@ -50,7 +51,7 @@ Elm.Native.String.make = function(elm) {
50 return str.split(sep);
51 return str.split(sep);
51 }
52 }
52 function join(sep, strs) {
53 function join(sep, strs) {
53− return strs.join(sep);
54+ return JS.fromList(strs).join(sep);
54 }
55 }
55 function repeat(n, chr) {
56 function repeat(n, chr) {
56 var result = '';
57 var result = '';
@@ -82,16 +83,16 @@ Elm.Native.String.make = function(elm) {
82 }
83 }
83
84
84 function words(str) {
85 function words(str) {
85− return str.split(/\s+/g);
86+ return JS.toList(str.split(/\s+/g));
86 }
87 }
87 function unwords(str) {
88 function unwords(str) {
88− return str.join(' ');
89+ return JS.fromList(str).join(' ');
89 }
90 }
90 function lines(str) {
91 function lines(str) {
91− return str.split(/\r\n|\r|\n/g);
92+ return JS.toList(str.split(/\r\n|\r|\n/g));
92 }
93 }
93 function unlines(str) {
94 function unlines(str) {
94− return str.join('\n');
95+ return JS.fromList(str).join('\n');
95 }
96 }
96
97
97 function toUpper(str) {
98 function toUpper(str) {