bulk put
This commit is contained in:
parent
6495ab1da8
commit
868cc5072d
2 changed files with 6 additions and 7 deletions
|
@ -59,9 +59,7 @@ public class CarSales
|
|||
car.setSeats((byte)(2 + rng.nextLessThan(6)));
|
||||
car.setDoors((byte)(2 + rng.nextLessThan(3)));
|
||||
|
||||
StructList.Builder<Wheel.Builder> wheels = car.initWheels(4);
|
||||
for (int i = 0; i < wheels.size(); ++i) {
|
||||
Wheel.Builder wheel = wheels.get(i);
|
||||
for (Wheel.Builder wheel : car.initWheels(4)) {
|
||||
wheel.setDiameter((short)(25 + rng.nextLessThan(15)));
|
||||
wheel.setAirPressure((float)(30.0 + rng.nextDouble(20.0)));
|
||||
wheel.setSnowTires(rng.nextLessThan(16) == 0);
|
||||
|
|
|
@ -313,10 +313,11 @@ final class WireHelpers {
|
|||
Text.Reader value) {
|
||||
Text.Builder builder = initTextPointer(refOffset, segment, value.size);
|
||||
|
||||
// TODO is there a way to do this with bulk methods?
|
||||
for (int i = 0; i < builder.size; ++i) {
|
||||
builder.buffer.put(builder.offset + i, value.buffer.get(value.offset + i));
|
||||
}
|
||||
ByteBuffer slice = value.buffer.duplicate();
|
||||
slice.position(value.offset);
|
||||
slice.limit(value.offset + value.size);
|
||||
builder.buffer.position(builder.offset);
|
||||
builder.buffer.put(slice);
|
||||
return builder;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue