Skip to content

Commit

Permalink
Remove redundant ->() in refmt code
Browse files Browse the repository at this point in the history
  • Loading branch information
johnhaley81 authored and gilbert committed Nov 30, 2018
1 parent 5d16528 commit 649a569
Show file tree
Hide file tree
Showing 5 changed files with 231 additions and 301 deletions.
64 changes: 27 additions & 37 deletions src/Future.re
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ let make = resolver => {
switch (data^) {
| None =>
data := Some(result);
(callbacks^)->Belt.List.reverse->(Belt.List.forEach(cb => cb(result)));
(callbacks^)->Belt.List.reverse->Belt.List.forEach(cb => cb(result));
/* Clean up memory usage */
callbacks := [];
| Some(_) => () /* Do nothing; theoretically not possible */
Expand Down Expand Up @@ -60,39 +60,33 @@ let get = (Future(getFn), f) => getFn(f);
* Future Belt.Result convenience functions,
* for working with a type Future.t( Belt.Result.t('a,'b) )
*/
let mapOk = (future, f) => future->(map(r => Belt.Result.map(r, f)));
let mapOk = (future, f) => future->map(r => Belt.Result.map(r, f));

let mapError = (future, f) =>
future
->(
map(r =>
switch (r) {
| Belt.Result.Error(v) => Belt.Result.Error(f(v))
| Ok(a) => Belt.Result.Ok(a)
}
)
->map(r =>
switch (r) {
| Belt.Result.Error(v) => Belt.Result.Error(f(v))
| Ok(a) => Belt.Result.Ok(a)
}
);

let flatMapOk = (future, f) =>
future
->(
flatMap(r =>
switch (r) {
| Belt.Result.Ok(v) => f(v)
| Belt.Result.Error(e) => value(Belt.Result.Error(e))
}
)
->flatMap(r =>
switch (r) {
| Belt.Result.Ok(v) => f(v)
| Belt.Result.Error(e) => value(Belt.Result.Error(e))
}
);

let flatMapError = (future, f) =>
future
->(
flatMap(r =>
switch (r) {
| Belt.Result.Ok(v) => value(Belt.Result.Ok(v))
| Belt.Result.Error(e) => f(e)
}
)
->flatMap(r =>
switch (r) {
| Belt.Result.Ok(v) => value(Belt.Result.Ok(v))
| Belt.Result.Error(e) => f(e)
}
);

let mapOk2 = (fa, fb, f) => flatMapOk(fa, a => mapOk(fb, b => f(a, b)));
Expand All @@ -107,24 +101,20 @@ let mapOk5 = (fa, fb, fc, fd, fe, f) =>

let tapOk = (future, f) =>
future
->(
tap(r =>
switch (r) {
| Belt.Result.Ok(v) => f(v)->ignore
| Error(_) => ()
}
)
->tap(r =>
switch (r) {
| Belt.Result.Ok(v) => f(v)->ignore
| Error(_) => ()
}
);

let tapError = (future, f) =>
future
->(
tap(r =>
switch (r) {
| Belt.Result.Error(v) => f(v)->ignore
| Ok(_) => ()
}
)
->tap(r =>
switch (r) {
| Belt.Result.Error(v) => f(v)->ignore
| Ok(_) => ()
}
);

let (>>=) = flatMapOk;
Expand Down
14 changes: 6 additions & 8 deletions src/FutureJs.re
Original file line number Diff line number Diff line change
Expand Up @@ -30,19 +30,17 @@ let fromPromise = (promise, errorTransformer) =>

let toPromise = future =>
Js.Promise.make((~resolve, ~reject as _) =>
future->(Future.get(value => resolve(. value)))
future->Future.get(value => resolve(. value))
);

let resultToPromise = future =>
Js.Promise.make((~resolve, ~reject) =>
future
->(
Future.map(result =>
switch (result) {
| Belt.Result.Ok(result) => resolve(. result)
| Belt.Result.Error(error) => reject(. error)
}
)
->Future.map(result =>
switch (result) {
| Belt.Result.Ok(result) => resolve(. result)
| Belt.Result.Error(error) => reject(. error)
}
)
->ignore
);
90 changes: 38 additions & 52 deletions src/FutureResult.re
Original file line number Diff line number Diff line change
@@ -1,79 +1,65 @@
let deprecate = (ft, name, more) =>
ft
->(
Future.tap(_ =>
Js.Console.warn("FutureResult." ++ name ++ " is deprecated." ++ more)
)
->Future.tap(_ =>
Js.Console.warn("FutureResult." ++ name ++ " is deprecated." ++ more)
);

let mapOk = (future, f) =>
future
->(
Future.map(r =>
switch (r) {
| Js.Result.Ok(v) => f(v)
| Error(e) => Js.Result.Error(e)
}
)
->Future.map(r =>
switch (r) {
| Js.Result.Ok(v) => f(v)
| Error(e) => Js.Result.Error(e)
}
)
->(deprecate("mapOk", " Please user Future.mapOk instead."));
->deprecate("mapOk", " Please user Future.mapOk instead.");

let flatMapOk = (future, f) =>
future
->(
Future.flatMap(r =>
switch (r) {
| Js.Result.Ok(v) => f(v)
| Error(e) => Future.value(Js.Result.Error(e))
}
)
->Future.flatMap(r =>
switch (r) {
| Js.Result.Ok(v) => f(v)
| Error(e) => Future.value(Js.Result.Error(e))
}
)
->(deprecate("flatMapOk", ""));
->deprecate("flatMapOk", "");

let mapError = (future, f) =>
future
->(
Future.map(r =>
switch (r) {
| Js.Result.Error(v) => f(v)
| Ok(a) => Js.Result.Ok(a)
}
)
->Future.map(r =>
switch (r) {
| Js.Result.Error(v) => f(v)
| Ok(a) => Js.Result.Ok(a)
}
)
->(deprecate("mapError", " Please user Future.mapError instead."));
->deprecate("mapError", " Please user Future.mapError instead.");

let flatMapError = (future, f) =>
future
->(
Future.flatMap(r =>
switch (r) {
| Js.Result.Error(v) => f(v)
| Ok(a) => Future.value(Js.Result.Ok(a))
}
)
->Future.flatMap(r =>
switch (r) {
| Js.Result.Error(v) => f(v)
| Ok(a) => Future.value(Js.Result.Ok(a))
}
)
->(deprecate("mapOk", ""));
->deprecate("mapOk", "");

let tapOk = (future, f) =>
future
->(
Future.tap(r =>
switch (r) {
| Js.Result.Ok(v) => f(v)->ignore
| Error(_) => ()
}
)
->Future.tap(r =>
switch (r) {
| Js.Result.Ok(v) => f(v)->ignore
| Error(_) => ()
}
)
->(deprecate("tapOk", " Please user Future.tapOk instead."));
->deprecate("tapOk", " Please user Future.tapOk instead.");

let tapError = (future, f) =>
future
->(
Future.tap(r =>
switch (r) {
| Js.Result.Error(v) => f(v)->ignore
| Ok(_) => ()
}
)
->Future.tap(r =>
switch (r) {
| Js.Result.Error(v) => f(v)->ignore
| Ok(_) => ()
}
)
->(deprecate("tapError", " Please user Future.tapError instead."));
->deprecate("tapError", " Please user Future.tapError instead.");
Loading

0 comments on commit 649a569

Please sign in to comment.