[vpack] ( from-element to-element from-size to-size from-type to-type -- quot )


Vocabulary
math.vectors.conversion.private

Inputs
from-elementan object
to-elementan object
from-sizean object
to-sizean object
from-typean object
to-typean object


Outputs
quotan object


Definition


:: [vpack]
( from-element to-element from-size to-size from-type to-type -- quot )
from-size to-size /i
log2 :> steps from-element to-element from-type to-type
steps check-vpack to-element {
{
half
[ [ [ from-type check-vconvert-type ] bi@ v>half ] ]
}
{
bfloat
[
[
[ from-type check-vconvert-type ] bi@
v>bfloat
]
]
}
[
drop from-type to-type to-element unsigned-type?
[ ([vpack-unsigned]) ] [ ([vpack-signed]) ] if
]
} case ;