def range
stelliferous@0.0.2.0 · storage_copy.bend:10
import stelliferous@0.0.2.0/storage_copy.bend as StorageCopy
import Base
import stelliferous@0.0.2.0/storage_buffer.bend as Storage
import stelliferous@0.0.2.0/tensor_view.bend as Views
import stelliferous@0.0.2.0/tensor_access.bend as Access
import stelliferous@0.0.2.0/tensor_operations.bend as Operations
import stelliferous@0.0.2.0/proofs/tensor_access_certificate.bend as AccessCertificate
10def range(~Element: Data,+count: U32,+source: U32,+destination: U32,input: Storage.Buffer<Element>,output: Storage.Buffer<Element>) ->
11 Storage.Buffer<Element> & Storage.Buffer<Element>:
12 Storage.Buffer{input,input_length,input_certificate} = input
13 Storage.Buffer{output,output_length,output_certificate} = output
14 +view = {Views.View{[Views.Axis{count,1}],source} : Views.View}
15 Operations.pair_buffers(~Element,input_length,output_length,
16 Access.copy_run(~Element,True{},U32.to_nat(count),view,destination,input,output),
17 AccessCertificate.copy(~Element,True{},U32.to_nat(count),view,destination,input,output,input_certificate,output_certificate))