public Capnproto.BuilderArena.AllocateResult allocate(int amount) { int len = this.segments.Count; // we allocate the first segment in the constructor. int result = this.segments[len - 1].allocate(amount); if (result != Capnproto.SegmentBuilder.FAILED_ALLOCATION) { return(new Capnproto.BuilderArena.AllocateResult(this.segments[len - 1], result)); } // allocate_owned_memory int size = System.Math.Max(amount, this.nextSize); Capnproto.SegmentBuilder newSegment = new Capnproto.SegmentBuilder(java.nio.ByteBuffer.allocate(size * Capnproto.Constants.BYTES_PER_WORD), this); switch (this.allocationStrategy.ordinal()) { case 1: { this.nextSize += size; break; } default: { break; } } // -------- newSegment.buffer.order(java.nio.ByteOrder.LITTLE_ENDIAN); newSegment.id = len; this.segments.Add(newSegment); return(new Capnproto.BuilderArena.AllocateResult(newSegment, newSegment.allocate(amount))); }
public BuilderArena(int firstSegmentSizeWords, Capnproto.BuilderArena.AllocationStrategy allocationStrategy) { this.segments = new System.Collections.Generic.List <Capnproto.SegmentBuilder>(); this.nextSize = firstSegmentSizeWords; this.allocationStrategy = allocationStrategy; Capnproto.SegmentBuilder segment0 = new Capnproto.SegmentBuilder(java.nio.ByteBuffer.allocate(firstSegmentSizeWords * Capnproto.Constants.BYTES_PER_WORD), this); segment0.buffer.order(java.nio.ByteOrder.LITTLE_ENDIAN); this.segments.Add(segment0); }
public StructBuilder(Capnproto.SegmentBuilder segment, int data, int pointers, int dataSize, short pointerCount) { // byte offset to data section // word offset of pointer section // in bits this.segment = segment; this.data = data; this.pointers = pointers; this.dataSize = dataSize; this.pointerCount = pointerCount; }
public ListBuilder(Capnproto.SegmentBuilder segment, int ptr, int elementCount, int step, int structDataSize, short structPointerCount) { // byte offset to front of list // in bits // in bits this.segment = segment; this.ptr = ptr; this.elementCount = elementCount; this.step = step; this.structDataSize = structDataSize; this.structPointerCount = structPointerCount; }
public java.nio.ByteBuffer[] getSegmentsForOutput() { java.nio.ByteBuffer[] result = new java.nio.ByteBuffer[this.segments.Count]; for (int ii = 0; ii < this.segments.Count; ++ii) { Capnproto.SegmentBuilder segment = segments[ii]; segment.buffer.rewind(); java.nio.ByteBuffer slice = segment.buffer.slice(); slice.limit(segment.currentSize() * Capnproto.Constants.BYTES_PER_WORD); slice.order(java.nio.ByteOrder.LITTLE_ENDIAN); result[ii] = slice; } return(result); }
private Capnproto.AnyPointer.Builder getRootInternal() { Capnproto.SegmentBuilder rootSegment = this.arena.segments[0]; if (rootSegment.currentSize() == 0) { int location = rootSegment.allocate(1); if (location == Capnproto.SegmentBuilder.FAILED_ALLOCATION) { throw new System.Exception("could not allocate root pointer"); } if (location != 0) { throw new System.Exception("First allocated word of new segment was not at offset 0"); } return(new Capnproto.AnyPointer.Builder(rootSegment, location)); } return(new Capnproto.AnyPointer.Builder(rootSegment, 0)); }
public override Capnproto.StructList.Builder <ElementBuilder> fromPointerBuilder(Capnproto.SegmentBuilder segment, int pointer) { return(Capnproto.WireHelpers.getWritableStructListPointer(this, pointer, segment, SingleFactory.StructSize(), null, 0)); }
public override Capnproto.StructList.Builder <ElementBuilder> constructBuilder(Capnproto.SegmentBuilder segment, int ptr, int elementCount, int step, int structDataSize, short structPointerCount) { return(new Capnproto.StructList.Builder <ElementBuilder>(SingleFactory, segment, ptr, elementCount, step, structDataSize, structPointerCount)); }
public void setPointerBuilder(Capnproto.SegmentBuilder segment, int pointer, Capnproto.Data.Reader value) { Capnproto.WireHelpers.setDataPointer(pointer, segment, value); }
public Capnproto.Data.Builder fromPointerBuilder(Capnproto.SegmentBuilder segment, int pointer) { return(Capnproto.WireHelpers.getWritableDataPointer(pointer, segment, null, 0, 0)); }
public Builder(Capnproto.SegmentBuilder segment, int pointer) { this.segment = segment; this.pointer = pointer; }
public Capnproto.AnyPointer.Builder fromPointerBuilder(Capnproto.SegmentBuilder segment, int pointer) { return(new Capnproto.AnyPointer.Builder(segment, pointer)); }
public AllocateResult(Capnproto.SegmentBuilder segment, int offset) { // offset to the beginning of the of allocated memory this.segment = segment; this.offset = offset; }
public sealed override Capnproto.EnumList.Builder <T> constructBuilder(Capnproto.SegmentBuilder segment, int ptr, int elementCount, int step, int structDataSize, short structPointerCount) { return(new Capnproto.EnumList.Builder <T>(values, segment, ptr, elementCount, step, structDataSize, structPointerCount)); }
public sealed override Capnproto.PrimitiveList.Boolean.Builder constructBuilder(Capnproto.SegmentBuilder segment, int ptr, int elementCount, int step, int structDataSize, short structPointerCount) { return(new Capnproto.PrimitiveList.Boolean.Builder(segment, ptr, elementCount, step, structDataSize, structPointerCount)); }
public Builder(Capnproto.SegmentBuilder segment, int ptr, int elementCount, int step, int structDataSize, short structPointerCount) : base(segment, ptr, elementCount, step, structDataSize, structPointerCount) { }
public override Capnproto.TextList.Builder constructBuilder(Capnproto.SegmentBuilder segment, int ptr, int elementCount, int step, int structDataSize, short structPointerCount) { return(new Capnproto.TextList.Builder(segment, ptr, elementCount, step, structDataSize, structPointerCount)); }
public Builder fromPointerBuilderRefDefault(Capnproto.SegmentBuilder segment, int pointer, Capnproto.SegmentReader defaultSegment, int defaultOffset) { return(Capnproto.WireHelpers.getWritableStructPointer(this, pointer, segment, this.StructSize(), defaultSegment, defaultOffset)); }
public Capnproto.AnyPointer.Builder initFromPointerBuilder(Capnproto.SegmentBuilder segment, int pointer, int elementCount) { Capnproto.AnyPointer.Builder result = new Capnproto.AnyPointer.Builder(segment, pointer); result.Clear(); return(result); }
public Builder fromPointerBuilder(Capnproto.SegmentBuilder segment, int pointer) { return(Capnproto.WireHelpers.getWritableStructPointer(this, pointer, segment, this.StructSize(), null, 0)); }
public Capnproto.Data.Builder fromPointerBuilderBlobDefault(Capnproto.SegmentBuilder segment, int pointer, java.nio.ByteBuffer defaultBuffer, int defaultOffset, int defaultSize) { return(Capnproto.WireHelpers.getWritableDataPointer(pointer, segment, defaultBuffer, defaultOffset, defaultSize)); }
public Builder initFromPointerBuilder(Capnproto.SegmentBuilder segment, int pointer, int elementCount) { return(Capnproto.WireHelpers.initStructPointer(this, pointer, segment, this.StructSize())); }
public Capnproto.Data.Builder initFromPointerBuilder(Capnproto.SegmentBuilder segment, int pointer, int size) { return(Capnproto.WireHelpers.initDataPointer(pointer, segment, size)); }
public void setPointerBuilder(Capnproto.SegmentBuilder segment, int pointer, Reader value) { Capnproto.WireHelpers.setStructPointer(segment, pointer, value); }
public Builder(Capnproto.StructBuilder.Factory <T> factory, Capnproto.SegmentBuilder segment, int ptr, int elementCount, int step, int structDataSize, short structPointerCount) : base(segment, ptr, elementCount, step, structDataSize, structPointerCount) { this.SingleFactory = factory; }
public abstract Builder constructBuilder(Capnproto.SegmentBuilder arg1, int arg2, int arg3, int arg4, short arg5);
public override Capnproto.StructList.Builder <ElementBuilder> fromPointerBuilderRefDefault(Capnproto.SegmentBuilder segment, int pointer, Capnproto.SegmentReader defaultSegment, int defaultOffset) { return(Capnproto.WireHelpers.getWritableStructListPointer(this, pointer, segment, SingleFactory.StructSize(), defaultSegment, defaultOffset)); }
public Builder(T[] values, Capnproto.SegmentBuilder segment, int ptr, int elementCount, int step, int structDataSize, short structPointerCount) : base(segment, ptr, elementCount, step, structDataSize, structPointerCount) { this.values = values; }
public override Capnproto.StructList.Builder <ElementBuilder> initFromPointerBuilder(Capnproto.SegmentBuilder segment, int pointer, int elementCount) { return(Capnproto.WireHelpers.initStructListPointer(this, pointer, segment, elementCount, SingleFactory.StructSize())); }
public virtual Builder initFromPointerBuilder(Capnproto.SegmentBuilder segment, int pointer, int elementCount) { return(Capnproto.WireHelpers.initListPointer(this, pointer, segment, elementCount, this.elementSize)); }