Broaden the argument types
This commit is contained in:
parent
f849db1c5c
commit
abf8ee049a
1 changed files with 6 additions and 1 deletions
|
|
@ -148,8 +148,13 @@ else: # JS
|
|||
proc ln*(x: float32): float32 {.importc: "Math.log", nodecl.}
|
||||
proc ln*(x: float64): float64 {.importc: "Math.log", nodecl.}
|
||||
|
||||
proc log*[T: SomeFloat](b, x: T): T = ln(x) / ln(b)
|
||||
proc log*[B, X: SomeFloat](b: B, x: X): auto =
|
||||
## Computes the logarithm base ``b`` of ``x``
|
||||
when B is float64 or X is float64
|
||||
var r: float64
|
||||
else:
|
||||
var r: float32
|
||||
result = ln(x) / ln(b)
|
||||
|
||||
when not defined(JS): # C
|
||||
proc log10*(x: float32): float32 {.importc: "log10f", header: "<math.h>".}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue