public static <S extends MessageSchema<S>> boolean tryReadFragment(Pipe<S> pipe) { assert( (!PipeReader.hasContentToRead(pipe)) || PipeMonitor.monitor(pipe, pipe.ringWalker.nextWorkingTail, Pipe.bytesReadBase(pipe) ) ); assert(pipe.usingHighLevelAPI); assert(Pipe.singleThreadPerPipeRead(pipe.id)); assert(null!=pipe.ringWalker) : "NullPointer, double check that pipe was passed into super constructor of stage."; if (FieldReferenceOffsetManager.isTemplateStart(Pipe.from(pipe), pipe.ringWalker.nextCursor)) { assert(StackStateWalker.isSeqStackEmpty(pipe.ringWalker)) : "Error the seqStack should be empty"; return StackStateWalker.prepReadMessage(pipe, pipe.ringWalker); } else { return StackStateWalker.prepReadFragment(pipe, pipe.ringWalker); } }
public static <S extends MessageSchema<S>> boolean tryReadFragment(Pipe<S> pipe) { assert( (!PipeReader.hasContentToRead(pipe)) || PipeMonitor.monitor(pipe, pipe.ringWalker.nextWorkingTail, Pipe.bytesReadBase(pipe) ) ); assert(pipe.usingHighLevelAPI); assert(Pipe.singleThreadPerPipeRead(pipe.id)); assert(null!=pipe.ringWalker) : "NullPointer, double check that pipe was passed into super constructor of stage."; if (FieldReferenceOffsetManager.isTemplateStart(Pipe.from(pipe), pipe.ringWalker.nextCursor)) { assert(StackStateWalker.isSeqStackEmpty(pipe.ringWalker)) : "Error the seqStack should be empty"; return StackStateWalker.prepReadMessage(pipe, pipe.ringWalker); } else { return StackStateWalker.prepReadFragment(pipe, pipe.ringWalker); } }
public static <S extends MessageSchema<S>> boolean tryReadFragment(Pipe<S> pipe) { assert( (!PipeReader.hasContentToRead(pipe)) || PipeMonitor.monitor(pipe, pipe.ringWalker.nextWorkingTail, Pipe.bytesReadBase(pipe) ) ); assert(pipe.usingHighLevelAPI); assert(Pipe.singleThreadPerPipeRead(pipe.id)); assert(null!=pipe.ringWalker) : "NullPointer, double check that pipe was passed into super constructor of stage."; if (FieldReferenceOffsetManager.isTemplateStart(Pipe.from(pipe), pipe.ringWalker.nextCursor)) { assert(StackStateWalker.isSeqStackEmpty(pipe.ringWalker)) : "Error the seqStack should be empty"; return StackStateWalker.prepReadMessage(pipe, pipe.ringWalker); } else { return StackStateWalker.prepReadFragment(pipe, pipe.ringWalker); } }