SYNOPSIS

Void setBlockData( var Binary block, Int offset, [Int] bdata )

ARGUMENTS

block The binary block

offset The offset to start at (zero-indexed)

bdata The data to write, as an array of Int s

DESCRIPTION

Set the contents of (part of) a block from an array. An Binary.OffsetOutOfRange (3kaya) Exception will be thrown if this would cause a write outside the bounds of the block. The following bits of code are equivalent:

  • setBlockData(block,offset,bdata); // is equivalent to for byte@idx in bdata {

         poke(block,offset+idx,byte);
    

    }

However, setBlockData is more efficient and checks bounds before any data is written - the above for loop could write partial data if offset+idx was greater than blockSize(block)

AUTHORS

Kaya standard library by Edwin Brady, Chris Morris and others ([email protected]). For further information see http://kayalang.org/

LICENSE

The Kaya standard library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License (version 2.1 or any later version) as published by the Free Software Foundation.

RELATED

Binary.Binary (3kaya)

Binary.array (3kaya)

Binary.copyBlock (3kaya)

Binary.getBlockChunk (3kaya)

Binary.poke (3kaya)

Binary.pokeString (3kaya)