protected internal T _getPointerField <T>(Capnproto.FromPointerReader <T> factory, int ptrIndex) { if (ptrIndex < this.pointerCount) { return(factory.fromPointerReader(this.segment, this.pointers + ptrIndex, this.nestingLimit)); } return(factory.fromPointerReader(Capnproto.SegmentReader.EMPTY, 0, this.nestingLimit)); }
public T GetAs <T>(Capnproto.FromPointerReader <T> factory) { return(factory.fromPointerReader(this.segment, this.pointer, this.nestingLimit)); }
public Reader(Capnproto.FromPointerReader <T> factory, Capnproto.SegmentReader segment, int ptr, int elementCount, int step, int structDataSize, short structPointerCount, int nestingLimit) : base(segment, ptr, elementCount, step, structDataSize, structPointerCount, nestingLimit) { this.SingleFactory = factory; }
protected internal virtual T _getPointerElement <T>(Capnproto.FromPointerReader <T> factory, int index) { return(factory.fromPointerReader(this.segment, (this.ptr + (int)((long)index * this.step / Capnproto.Constants.BITS_PER_BYTE)) / Capnproto.Constants.BYTES_PER_WORD, this.nestingLimit)); }
public T GetRoot <T>(Capnproto.FromPointerReader <T> factory) { Capnproto.SegmentReader segment = this.arena.tryGetSegment(0); Capnproto.AnyPointer.Reader any = new Capnproto.AnyPointer.Reader(segment, 0, this.nestingLimit); return(any.GetAs(factory)); }