diff --git a/src/rustint/core.clj b/src/rustint/core.clj index b67fe79..413fd2b 100644 --- a/src/rustint/core.clj +++ b/src/rustint/core.clj @@ -2168,8 +2168,22 @@ ; user=> (convertir-formato-impresion '("Las raices cuadradas de {} son +{:.8} y -{:.8}" 4.0 1.999999999985448 1.999999999985448)) ; ("Las raices cuadradas de %.0f son +%.8f y -%.8f" 4.0 1.999999999985448 1.999999999985448) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +(defn especificador-formato [arg, rustf] + (cond + (string? arg) "%s" + (int? arg) "%d" + (and (float? arg) (nil? rustf)) "%.0f" + (and (float? arg) (not (nil? rustf))) (format "%%%sf" rustf) + ) +) + +(defn get-rust-formatters [s] + (map last (re-seq #"\{:?(.\d)?\}" s)) +) + (defn convertir-formato-impresion [args] - '("Hola, mundo!") + args ) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;