public override DocsAndPositionsEnum DocsAndPositions(Bits liveDocs, DocsAndPositionsEnum reuse, int flags)
            {
                SimpleTVPostings postings = _current.Value;

                if (postings.POSITIONS == null && postings.START_OFFSETS == null)
                {
                    return(null);
                }

                // TODO: reuse
                var e = new SimpleTVDocsAndPositionsEnum();

                e.Reset(liveDocs, postings.POSITIONS, postings.START_OFFSETS, postings.END_OFFSETS, postings.PAYLOADS);
                return(e);
            }
            public override DocsAndPositionsEnum DocsAndPositions(IBits liveDocs, DocsAndPositionsEnum reuse, DocsAndPositionsFlags flags)
            {
                var postings = _current.Value;

                if (postings.positions == null && postings.startOffsets == null)
                {
                    return(null);
                }

                // TODO: reuse
                var e = new SimpleTVDocsAndPositionsEnum();

                e.Reset(liveDocs, postings.positions, postings.startOffsets, postings.endOffsets, postings.payloads);
                return(e);
            }
            public override DocsAndPositionsEnum DocsAndPositions(Bits liveDocs, DocsAndPositionsEnum reuse, int flags)
            {
                var postings = _current.Value;
                if (postings.POSITIONS == null && postings.START_OFFSETS == null)
                    return null;

                // TODO: reuse
                var e = new SimpleTVDocsAndPositionsEnum();
                e.Reset(liveDocs, postings.POSITIONS, postings.START_OFFSETS, postings.END_OFFSETS, postings.PAYLOADS);
                return e;
            }