From cafbb785cbec5268405d0c467d1a855c72a6b769 Mon Sep 17 00:00:00 2001 From: Jesse Gumm Date: Fri, 10 Jun 2011 10:58:48 -0500 Subject: [PATCH] to_list, to_atom, and to_binary support floats using mochinum:digits --- src/lib/wf_convert.erl | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/lib/wf_convert.erl b/src/lib/wf_convert.erl index 3ce72701..d3418a9f 100644 --- a/src/lib/wf_convert.erl +++ b/src/lib/wf_convert.erl @@ -32,16 +32,19 @@ to_list(A) -> inner_to_list(A). inner_to_list(A) when is_atom(A) -> atom_to_list(A); inner_to_list(B) when is_binary(B) -> binary_to_list(B); inner_to_list(I) when is_integer(I) -> integer_to_list(I); +inner_to_list(F) when is_float(F) -> mochinum:digits(F); inner_to_list(L) when is_list(L) -> L. to_atom(A) when is_atom(A) -> A; to_atom(B) when is_binary(B) -> to_atom(binary_to_list(B)); to_atom(I) when is_integer(I) -> to_atom(integer_to_list(I)); +to_atom(F) when is_float(F) -> to_atom(mochinum:digits(F)); to_atom(L) when is_list(L) -> list_to_atom(binary_to_list(list_to_binary(L))). to_binary(A) when is_atom(A) -> to_binary(atom_to_list(A)); to_binary(B) when is_binary(B) -> B; to_binary(I) when is_integer(I) -> to_binary(integer_to_list(I)); +to_binary(F) when is_float(F) -> to_binary(mochinum:digits(F)); to_binary(L) when is_list(L) -> list_to_binary(L). to_integer(A) when is_atom(A) -> to_integer(atom_to_list(A));