@@ -1,8 +1,6 @@
2−function nativeHTTP(elm) {
2+function nativeHTTP() {
3 "use strict";
3 "use strict";
4− var toElmString = Elm.JavaScript.castJSStringToString;
5− var toJSString = Elm.JavaScript.castStringToJSString;
7 function registerReq(queue,responses) { return function(req) {
5 function registerReq(queue,responses) { return function(req) {
8 if (req.url !== "") { sendReq(queue,responses,req); }
6 if (req.url !== "") { sendReq(queue,responses,req); }
@@ -20,10 +18,12 @@ function nativeHTTP(elm) {
22 function setHeader(pair) {
20 function setHeader(pair) {
23− request.setRequestHeader(toJSString(pair._0), toJSString(pair._1));
21+ request.setRequestHeader(Elm.JavaScript.castStringToJSString(pair._0),
22+ Elm.JavaScript.castStringToJSString(pair._1));
26 function sendReq(queue,responses,req) {
25 function sendReq(queue,responses,req) {
26+ var JS = Elm.JavaScript;
27 var response = { value: Elm.HTTP.Waiting };
27 var response = { value: Elm.HTTP.Waiting };
28 queue.push(response);
28 queue.push(response);
@@ -33,15 +33,16 @@ function nativeHTTP(elm) {
33 request.onreadystatechange = function(e) {
33 request.onreadystatechange = function(e) {
34 if (request.readyState === 4) {
34 if (request.readyState === 4) {
35 response.value = (request.status === 200
35 response.value = (request.status === 200
36− ? Success(toElmString(request.responseText))
36+ ? Elm.HTTP.Success(JS.castJSStringToString(request.responseText))
37− : Failure(request.status)(toElmString(request.statusText)));
37+ : Elm.HTTP.Failure(request.status)(JS.castJSStringToString(request.statusText)));
38 setTimeout(function() { updateQueue(queue,responses); }, 0);
38 setTimeout(function() { updateQueue(queue,responses); }, 0);
41− request.open(toJSString(req.verb), toJSString(req.url), true);
41+ request.open(JS.castStringToJSString(req.verb),
42+ JS.castStringToJSString(req.url),
42 Elm.List.map(setHeader)(req.headers);
44 Elm.List.map(setHeader)(req.headers);
43− request.send(toJSString(req.body));
45+ request.send(JS.castStringToJSString(req.body));
47 function send(requests) {
48 function send(requests) {
@@ -51,5 +52,5 @@ function nativeHTTP(elm) {
51 return Elm.Signal.lift2(f)(responses)(sender);
52 return Elm.Signal.lift2(f)(responses)(sender);
54− elm.Native.HTTP = {send:send};
55+ Elm.Native.HTTP = {send:send};