Skip to content

Commit 1152224

Browse files
committed
Merge pull request #16 from davidchambers/triple-quotes
use triple-quoted strings to avoid backslashes
2 parents 4e7f0d5 + 98505ee commit 1152224

File tree

3 files changed

+205
-145
lines changed

3 files changed

+205
-145
lines changed

src/Data/Char/Char.purs

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,18 @@ module Data.Char
1111
charString (Char s) = s
1212

1313
foreign import toCharCode
14-
"function toCharCode(c){\
15-
\ return c.charCodeAt(0);\
16-
\}" :: Char -> Number
17-
18-
foreign import fromCharCode
19-
"function fromCharCode(c){\
20-
\ return String.fromCharCode(c);\
21-
\}" :: Number -> Char
14+
"""
15+
function toCharCode(c) {
16+
return c.charCodeAt(0);
17+
}
18+
""" :: Char -> Number
19+
20+
foreign import fromCharCode
21+
"""
22+
function fromCharCode(c) {
23+
return String.fromCharCode(c);
24+
}
25+
""" :: Number -> Char
2226

2327
instance eqChar :: Eq Char where
2428
(==) (Char a) (Char b) = a == b

src/Data/String.purs

Lines changed: 118 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,12 @@ module Data.String
2626
import Data.Function
2727

2828
foreign import _charAt
29-
"function _charAt(i, s, Just, Nothing) {\
30-
\ if (i < 0 || i >= s.length) return Nothing;\
31-
\ else return Just(s.charAt(i));\
32-
\}" :: forall a. Fn4 Number String (a -> Maybe a) (Maybe a) (Maybe Char)
29+
"""
30+
function _charAt(i, s, Just, Nothing) {
31+
if (i < 0 || i >= s.length) return Nothing;
32+
else return Just(s.charAt(i));
33+
}
34+
""" :: forall a. Fn4 Number String (a -> Maybe a) (Maybe a) (Maybe Char)
3335

3436
charAt :: Number -> String -> Maybe Char
3537
charAt n s = runFn4 _charAt n s Just Nothing
@@ -38,116 +40,150 @@ module Data.String
3840
fromChar = charString
3941

4042
foreign import _charCodeAt
41-
"function _charCodeAt(i, s, Just, Nothing) {\
42-
\ if (i < 0 || i >= s.length) return Nothing;\
43-
\ else return Just(s.charCodeAt(i));\
44-
\}" :: forall a. Fn4 Number String (a -> Maybe a) (Maybe a) (Maybe Number)
43+
"""
44+
function _charCodeAt(i, s, Just, Nothing) {
45+
if (i < 0 || i >= s.length) return Nothing;
46+
else return Just(s.charCodeAt(i));
47+
}
48+
""" :: forall a. Fn4 Number String (a -> Maybe a) (Maybe a) (Maybe Number)
4549

4650
charCodeAt :: Number -> String -> Maybe Number
4751
charCodeAt n s = runFn4 _charCodeAt n s Just Nothing
4852

4953
foreign import fromCharArray
50-
"function fromCharArray(a) {\
51-
\ return a.join(''); \
52-
\}" :: [Char] -> String
54+
"""
55+
function fromCharArray(a) {
56+
return a.join('');
57+
}
58+
""" :: [Char] -> String
5359

5460
foreign import indexOf
55-
"function indexOf(x) {\
56-
\ return function(s) {\
57-
\ return s.indexOf(x);\
58-
\ }; \
59-
\}" :: String -> String -> Number
61+
"""
62+
function indexOf(x) {
63+
return function(s) {
64+
return s.indexOf(x);
65+
};
66+
}
67+
""" :: String -> String -> Number
6068

6169
foreign import indexOf'
62-
"function indexOf$prime(x) {\
63-
\ return function(startAt) {\
64-
\ return function(s) {\
65-
\ return s.indexOf(x, startAt);\
66-
\ }; \
67-
\ }; \
68-
\}" :: String -> Number -> String -> Number
70+
"""
71+
function indexOf$prime(x) {
72+
return function(startAt) {
73+
return function(s) {
74+
return s.indexOf(x, startAt);
75+
};
76+
};
77+
}
78+
""" :: String -> Number -> String -> Number
6979

7080
foreign import lastIndexOf
71-
"function lastIndexOf(x) {\
72-
\ return function(s) {\
73-
\ return s.lastIndexOf(x);\
74-
\ };\
75-
\}" :: String -> String -> Number
81+
"""
82+
function lastIndexOf(x) {
83+
return function(s) {
84+
return s.lastIndexOf(x);
85+
};
86+
}
87+
""" :: String -> String -> Number
7688

7789
foreign import lastIndexOf'
78-
"function lastIndexOf$prime(x) {\
79-
\ return function(startAt) {\
80-
\ return function(s) {\
81-
\ return s.lastIndexOf(x, startAt);\
82-
\ }; \
83-
\ }; \
84-
\}" :: String -> Number -> String -> Number
90+
"""
91+
function lastIndexOf$prime(x) {
92+
return function(startAt) {
93+
return function(s) {
94+
return s.lastIndexOf(x, startAt);
95+
};
96+
};
97+
}
98+
""" :: String -> Number -> String -> Number
8599

86100
foreign import length
87-
"function length(s) {\
88-
\ return s.length;\
89-
\}" :: String -> Number
101+
"""
102+
function length(s) {
103+
return s.length;
104+
}
105+
""" :: String -> Number
90106

91107
foreign import localeCompare
92-
"function localeCompare(s1) {\
93-
\ return function(s2) {\
94-
\ return s1.localeCompare(s2);\
95-
\ };\
96-
\}" :: String -> String -> Number
108+
"""
109+
function localeCompare(s1) {
110+
return function(s2) {
111+
return s1.localeCompare(s2);
112+
};
113+
}
114+
""" :: String -> String -> Number
97115

98116
foreign import replace
99-
"function replace(s1) {\
100-
\ return function(s2) {\
101-
\ return function(s3) {\
102-
\ return s3.replace(s1, s2);\
103-
\ };\
104-
\ };\
105-
\}" :: String -> String -> String -> String
117+
"""
118+
function replace(s1) {
119+
return function(s2) {
120+
return function(s3) {
121+
return s3.replace(s1, s2);
122+
};
123+
};
124+
}
125+
""" :: String -> String -> String -> String
106126

107127
foreign import take
108-
"function take(n) {\
109-
\ return function(s) {\
110-
\ return s.substr(0, n);\
111-
\ };\
112-
\}" :: Number -> String -> String
128+
"""
129+
function take(n) {
130+
return function(s) {
131+
return s.substr(0, n);
132+
};
133+
}
134+
""" :: Number -> String -> String
113135

114136
foreign import drop
115-
"function drop(n) {\
116-
\ return function(s) {\
117-
\ return s.substr(n);\
118-
\ };\
119-
\}" :: Number -> String -> String
137+
"""
138+
function drop(n) {
139+
return function(s) {
140+
return s.substr(n);
141+
};
142+
}
143+
""" :: Number -> String -> String
120144

121145
foreign import split
122-
"function split(sep) {\
123-
\ return function(s) {\
124-
\ return s.split(sep);\
125-
\ };\
126-
\}" :: String -> String -> [String]
146+
"""
147+
function split(sep) {
148+
return function(s) {
149+
return s.split(sep);
150+
};
151+
}
152+
""" :: String -> String -> [String]
127153

128154
foreign import toCharArray
129-
"function toCharArray(s) {\
130-
\ return s.split('');\
131-
\}" :: String -> [Char]
155+
"""
156+
function toCharArray(s) {
157+
return s.split('');
158+
}
159+
""" :: String -> [Char]
132160

133161
foreign import toLower
134-
"function toLower(s) {\
135-
\ return s.toLowerCase();\
136-
\}" :: String -> String
162+
"""
163+
function toLower(s) {
164+
return s.toLowerCase();
165+
}
166+
""" :: String -> String
137167

138168
foreign import toUpper
139-
"function toUpper(s) {\
140-
\ return s.toUpperCase();\
141-
\}" :: String -> String
169+
"""
170+
function toUpper(s) {
171+
return s.toUpperCase();
172+
}
173+
""" :: String -> String
142174

143175
foreign import trim
144-
"function trim(s) {\
145-
\ return s.trim();\
146-
\}" :: String -> String
176+
"""
177+
function trim(s) {
178+
return s.trim();
179+
}
180+
""" :: String -> String
147181

148182
foreign import joinWith
149-
"function joinWith (s) {\
150-
\ return function (xs) {\
151-
\ return xs.join(s);\
152-
\ };\
153-
\}" :: String -> [String] -> String
183+
"""
184+
function joinWith(s) {
185+
return function(xs) {
186+
return xs.join(s);
187+
};
188+
}
189+
""" :: String -> [String] -> String

0 commit comments

Comments
 (0)