Concrete class that reads the current doc/freq/skip postings format @lucene.experimental TODO: -- should we switch "hasProx" higher up? and create two separate docs readers, one that also reads prox and one that doesn't?
Inheritance: PostingsReaderBase
        public override FieldsProducer FieldsProducer(SegmentReadState state)
        {
            PostingsReaderBase docsReader    = null;
            PostingsReaderBase pulsingReader = null;

            bool success = false;

            try
            {
                docsReader    = _wrappedPostingsBaseFormat.PostingsReaderBase(state);
                pulsingReader = new PulsingPostingsReader(state, docsReader);
                FieldsProducer ret = new BlockTreeTermsReader(
                    state.Directory, state.FieldInfos, state.SegmentInfo,
                    pulsingReader,
                    state.Context,
                    state.SegmentSuffix,
                    state.TermsIndexDivisor);
                success = true;
                return(ret);
            }
            finally
            {
                if (!success)
                {
                    IOUtils.CloseWhileHandlingException(docsReader, pulsingReader);
                }
            }
        }
 public override FieldsProducer FieldsProducer(SegmentReadState state)
 {
     PostingsReaderBase docsReader = null;
     PostingsReaderBase pulsingReaderInner = null;
     PostingsReaderBase pulsingReader = null;
     bool success = false;
     try
     {
         docsReader = new Lucene41PostingsReader(state.Directory, state.FieldInfos, state.SegmentInfo, state.Context, state.SegmentSuffix);
         pulsingReaderInner = new PulsingPostingsReader(state, docsReader);
         pulsingReader = new PulsingPostingsReader(state, pulsingReaderInner);
         FieldsProducer ret = new BlockTreeTermsReader(
                                                       state.Directory, state.FieldInfos, state.SegmentInfo,
                                                       pulsingReader,
                                                       state.Context,
                                                       state.SegmentSuffix,
                                                       state.TermsIndexDivisor);
         success = true;
         return ret;
     }
     finally
     {
         if (!success)
         {
             IOUtils.CloseWhileHandlingException(docsReader, pulsingReaderInner, pulsingReader);
         }
     }
 }