support for start/length in buffer methods
This commit is contained in:
parent
4e46682489
commit
f2c43c74ac
@ -123,21 +123,25 @@ namespace BufferMethods {
|
|||||||
/**
|
/**
|
||||||
* Shift buffer left in place, with zero padding.
|
* Shift buffer left in place, with zero padding.
|
||||||
* @param offset number of bytes to shift; use negative value to shift right
|
* @param offset number of bytes to shift; use negative value to shift right
|
||||||
|
* @param start start offset in buffer. Default is 0.
|
||||||
|
* @param length number of elements in buffer. If negative, length is set as the buffer length minus start. eg: -1
|
||||||
*/
|
*/
|
||||||
//%
|
//%
|
||||||
void shift(Buffer buf, int offset)
|
void shift(Buffer buf, int offset, int start = 0, int length = -1)
|
||||||
{
|
{
|
||||||
ManagedBuffer(buf).shift(offset);
|
ManagedBuffer(buf).shift(offset, start, length);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Rotate buffer left in place.
|
* Rotate buffer left in place.
|
||||||
* @param offset number of bytes to shift; use negative value to shift right
|
* @param offset number of bytes to shift; use negative value to shift right
|
||||||
|
* @param start start offset in buffer. Default is 0.
|
||||||
|
* @param length number of elements in buffer. If negative, length is set as the buffer length minus start. eg: -1
|
||||||
*/
|
*/
|
||||||
//%
|
//%
|
||||||
void rotate(Buffer buf, int offset)
|
void rotate(Buffer buf, int offset, int start = 0, int length = -1)
|
||||||
{
|
{
|
||||||
ManagedBuffer(buf).rotate(offset);
|
ManagedBuffer(buf).rotate(offset, start, length);
|
||||||
}
|
}
|
||||||
|
|
||||||
// int readBytes(uint8_t *dst, int offset, int length, bool swapBytes = false) const;
|
// int readBytes(uint8_t *dst, int offset, int length, bool swapBytes = false) const;
|
||||||
|
12
libs/microbit/shims.d.ts
vendored
12
libs/microbit/shims.d.ts
vendored
@ -635,16 +635,20 @@ declare interface Buffer {
|
|||||||
/**
|
/**
|
||||||
* Shift buffer left in place, with zero padding.
|
* Shift buffer left in place, with zero padding.
|
||||||
* @param offset number of bytes to shift; use negative value to shift right
|
* @param offset number of bytes to shift; use negative value to shift right
|
||||||
|
* @param start start offset in buffer. Default is 0.
|
||||||
|
* @param length number of elements in buffer. If negative, length is set as the buffer length minus start. eg: -1
|
||||||
*/
|
*/
|
||||||
//% shim=BufferMethods::shift
|
//% start.defl=0 length.defl=-1 shim=BufferMethods::shift
|
||||||
shift(offset: number): void;
|
shift(offset: number, start?: number, length?: number): void;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Rotate buffer left in place.
|
* Rotate buffer left in place.
|
||||||
* @param offset number of bytes to shift; use negative value to shift right
|
* @param offset number of bytes to shift; use negative value to shift right
|
||||||
|
* @param start start offset in buffer. Default is 0.
|
||||||
|
* @param length number of elements in buffer. If negative, length is set as the buffer length minus start. eg: -1
|
||||||
*/
|
*/
|
||||||
//% shim=BufferMethods::rotate
|
//% start.defl=0 length.defl=-1 shim=BufferMethods::rotate
|
||||||
rotate(offset: number): void;
|
rotate(offset: number, start?: number, length?: number): void;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Write contents of `src` at `dstOffset` in current buffer.
|
* Write contents of `src` at `dstOffset` in current buffer.
|
||||||
|
@ -70,7 +70,7 @@
|
|||||||
"yottaTarget": "bbc-microbit-classic-gcc",
|
"yottaTarget": "bbc-microbit-classic-gcc",
|
||||||
"yottaCorePackage": "pxt-microbit-core",
|
"yottaCorePackage": "pxt-microbit-core",
|
||||||
"githubCorePackage": "microsoft/pxt-microbit-core",
|
"githubCorePackage": "microsoft/pxt-microbit-core",
|
||||||
"gittag": "v0.1.11",
|
"gittag": "v0.2.2",
|
||||||
"serviceId": "ws"
|
"serviceId": "ws"
|
||||||
},
|
},
|
||||||
"serial": {
|
"serial": {
|
||||||
|
Loading…
Reference in New Issue
Block a user