From 5e06a3d1f4862e4bfce7ec337c0981edbd0999c4 Mon Sep 17 00:00:00 2001 From: Tommy Hofmann Date: Thu, 22 Dec 2022 20:40:29 +0100 Subject: [PATCH] Add sign(::Type{Int}, ::fmpq) (#1366) --- src/flint/fmpq.jl | 2 ++ test/flint/fmpq-test.jl | 3 +++ 2 files changed, 5 insertions(+) diff --git a/src/flint/fmpq.jl b/src/flint/fmpq.jl index 211ea23e8..63663b5e4 100644 --- a/src/flint/fmpq.jl +++ b/src/flint/fmpq.jl @@ -96,6 +96,8 @@ Return the sign of $a$ ($-1$, $0$ or $1$) as a fraction. """ sign(a::fmpq) = fmpq(sign(numerator(a))) +sign(::Type{Int}, a::fmpq) = sign(Int, numerator(a)) + function abs(a::fmpq) z = fmpq() ccall((:fmpq_abs, libflint), Nothing, (Ref{fmpq}, Ref{fmpq}), z, a) diff --git a/test/flint/fmpq-test.jl b/test/flint/fmpq-test.jl index f27dee0f0..b7e226c32 100644 --- a/test/flint/fmpq-test.jl +++ b/test/flint/fmpq-test.jl @@ -118,6 +118,9 @@ end @test sign(fmpq(-2, 3)) == -1 @test sign(fmpq()) == 0 @test sign(fmpq(1, 7)) == 1 + @test sign(Int, fmpq(-2, 3)) == -1 + @test sign(Int, fmpq()) == 0 + @test sign(Int, fmpq(1, 7)) == 1 @test isone(one(R))