public override DocsEnum Docs(FieldInfo fieldInfo, BlockTermState bTermState, Bits liveDocs, DocsEnum reuse, int flags) { var termState = (SepTermState)bTermState; SepDocsEnum docsEnum; if (!(reuse is SepDocsEnum)) { docsEnum = new SepDocsEnum(this); } else { docsEnum = (SepDocsEnum)reuse; if (docsEnum.START_DOC_IN != _docIn) { // If you are using ParellelReader, and pass in a // reused DocsAndPositionsEnum, it could have come // from another reader also using sep codec docsEnum = new SepDocsEnum(this); } } return(docsEnum.Init(fieldInfo, termState, liveDocs)); }
public override DocsEnum Docs(FieldInfo fieldInfo, BlockTermState termState, IBits liveDocs, DocsEnum reuse, DocsFlags flags) { SepTermState termState_ = (SepTermState)termState; // If you are using ParellelReader, and pass in a // reused DocsAndPositionsEnum, it could have come // from another reader also using sep codec if (reuse is null || !(reuse is SepDocsEnum docsEnum) || docsEnum.startDocIn != docIn) { docsEnum = new SepDocsEnum(this); } return(docsEnum.Init(fieldInfo, termState_, liveDocs)); }
public override DocsEnum Docs(FieldInfo fieldInfo, BlockTermState bTermState, Bits liveDocs, DocsEnum reuse, int flags) { var termState = (SepTermState)bTermState; SepDocsEnum docsEnum; if (!(reuse is SepDocsEnum)) { docsEnum = new SepDocsEnum(this); } else { docsEnum = (SepDocsEnum) reuse; if (docsEnum.START_DOC_IN != _docIn) { // If you are using ParellelReader, and pass in a // reused DocsAndPositionsEnum, it could have come // from another reader also using sep codec docsEnum = new SepDocsEnum(this); } } return docsEnum.Init(fieldInfo, termState, liveDocs); }