internal void WriteProx(int termID, int proxCode) { //System.out.println("writeProx termID=" + termID + " proxCode=" + proxCode); Debug.Assert(hasProx); BytesRef payload; if (payloadAttribute == null) { payload = null; } else { payload = payloadAttribute.Payload; } if (payload != null && payload.Length > 0) { termsHashPerField.WriteVInt32(1, (proxCode << 1) | 1); termsHashPerField.WriteVInt32(1, payload.Length); termsHashPerField.WriteBytes(1, payload.Bytes, payload.Offset, payload.Length); hasPayloads = true; } else { termsHashPerField.WriteVInt32(1, proxCode << 1); } FreqProxPostingsArray postings = (FreqProxPostingsArray)termsHashPerField.postingsArray; postings.lastPositions[termID] = fieldState.Position; }