support reinterpret from UIntX to Fixed{IntX, N}
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 35/100
Línea de trabajo
Empieza leyendo el método reinterpret en src/fixed.jl en la ubicación enlazada y reproduce el ejemplo de Julia indicado. Compara el comportamiento propuesto de UIntX a Fixed{IntX, N} con el enfoque existente de doble reinterpret. Se considera terminado cuando la forma de reinterpret prevista funciona sin el error de leaf-primitive indicado y existe cobertura para los tipos de enteros relevantes.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Currently if you have a UInt16 that you want to reinterpret as a signed fixed-point number the reinterpret method here doesn't apply, so you get an error:
julia> reinterpret(Fixed{Int16, 15}, 0x8123)
ERROR: bitcast: target type not a leaf primitive type
Stacktrace:
[1] reinterpret(::Type{FixedPointNumbers.Fixed{Int16,15}}, ::UInt16) at ./essentials.jl:155
[2] eval(::Module, ::Any) at ./boot.jl:235
Is it worth having another reinterpret method to handle this, or is it safer to have the user double-reinterpret? (e.g. reinterpret(Fixed{Int16, 15}, reinterpret(Int16, 0x8123)))
One proposed method would be:
function Base.reinterpret(::Type{Fixed{T,f}}, x::Unsigned) where {T <: Signed,f}
reinterpret(Fixed{T, f}, reinterpret(T, x))
end
Or we could even drop the requirement the x subtypes Unsigned if we want to reinterpret more broadly.
- Lenguaje dominante
- Julia
- Estrellas
- 95
- Forks
- 38
- Merge medio
- 16 h 31 min
- PR fusionados (30 d)
- 9
Preparar el entorno
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de JuliaMath/FixedPointNumbers.jl
-
bug
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
JuliaMath/FixedPointNumbers.jl#343 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 3/5 1-2 días Aptitud para principiantes 62/100
JuliaMath/FixedPointNumbers.jl#342 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
JuliaMath/FixedPointNumbers.jl#337 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 42/100
JuliaMath/FixedPointNumbers.jl#331 · 7 comentarios ·
Los mantenedores suelen responder en 1 día
-
needs comments
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
JuliaMath/FixedPointNumbers.jl#318 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de JuliaMath/FixedPointNumbers.jl
Issues similares
-
add-on doc enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
JuliaGraphics/ColorTypes.jl#344 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
`enzymexla.linalg.lu` lowering fails for a tall matrix: the permutation is built with the pivot typeAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
EnzymeAD/Enzyme-JAX#3286 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 90/100
SciML/LinearSolve.jl#1359 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
EnzymeAD/ReactantNitro.jl#13 ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
epiforecasts/BVDOutbreakSize#1009 ·
Los mantenedores suelen responder en 1 día