TensorBand.gather: def of stelliferous@0.0.2.0 Import: import stelliferous@0.0.2.0/tensor_band.bend as TensorBand Lines 60-65 of stelliferous@0.0.2.0/tensor_band.bend: https://jend.leeeet.dev/read.txt?path=stelliferous@0.0.2.0/tensor_band.bend&start_line=60&end_line=65 import Base import stelliferous@0.0.2.0/storage_buffer.bend as Storage import stelliferous@0.0.2.0/traversal_partition.bend as Partition # One allocation is provided by the caller. Each value is copied once, using # one contiguous range per channel per band. No intermediate dense images. def gather(~Element: Data,+geometry: Geometry,bands: Bands(~Element),output: Storage.Buffer) -> Storage.Buffer: match bands: case Partition.Leaf{input,first,rows,details}: gather_leaf(~Element,geometry,first,rows,input,output) case Partition.Fork{left,right}: gather(~Element,geometry,right,gather(~Element,geometry,left,output)) Uses (5): https://jend.leeeet.dev/definition.txt?path=stelliferous@0.0.2.0/storage_buffer.bend&name=Buffer https://jend.leeeet.dev/definition.txt?path=stelliferous@0.0.2.0/tensor_band.bend&name=Bands https://jend.leeeet.dev/definition.txt?path=stelliferous@0.0.2.0/tensor_band.bend&name=Geometry https://jend.leeeet.dev/definition.txt?path=stelliferous@0.0.2.0/tensor_band.bend&name=gather_leaf https://jend.leeeet.dev/definition.txt?path=stelliferous@0.0.2.0/traversal_partition.bend&name=Tree