public override void EncodeTerm(long[] longs, DataOutput @out, FieldInfo fieldInfo, BlockTermState _state, bool absolute) { IntBlockTermState state = (IntBlockTermState)_state; if (absolute) { LastState = EmptyState; } longs[0] = state.DocStartFP - LastState.DocStartFP; if (FieldHasPositions) { longs[1] = state.PosStartFP - LastState.PosStartFP; if (FieldHasPayloads || FieldHasOffsets) { longs[2] = state.PayStartFP - LastState.PayStartFP; } } if (state.SingletonDocID != -1) { @out.WriteVInt(state.SingletonDocID); } if (FieldHasPositions) { if (state.LastPosBlockOffset != -1) { @out.WriteVLong(state.LastPosBlockOffset); } } if (state.SkipOffset != -1) { @out.WriteVLong(state.SkipOffset); } LastState = state; }
public static void Write(DataOutput output, BytesRef b) { for (var i = 0; i < b.Length; i++) { var bx = b.Bytes[b.Offset + i]; if (bx == NEWLINE || bx == ESCAPE) { output.WriteByte(ESCAPE); } output.WriteByte(bx); } }
public static void WriteNewline(DataOutput output) { output.WriteByte(NEWLINE); }
public static void Write(DataOutput output, string s, BytesRef scratch) { UnicodeUtil.UTF16toUTF8(s.ToCharArray(), 0, s.Length, scratch); Write(output, scratch); }