/// <summary> /// Write the contents of this <see cref="Row"/> to the given output stream. /// </summary> /// <param name="os">the output stream</param> /// <exception cref="IOException">if an I/O error occurs</exception> public virtual void Store(IDataOutput os) { os.WriteInt32(cells.Count); foreach (char c in cells.Keys) { Cell e = At(c); if (e.cmd < 0 && e.@ref < 0) { continue; } os.WriteChar(c); os.WriteInt32(e.cmd); os.WriteInt32(e.cnt); os.WriteInt32(e.@ref); os.WriteInt32(e.skip); } }
/// <summary> /// Write the contents of this <see cref="Row"/> to the given output stream. /// </summary> /// <param name="os">the output stream</param> /// <exception cref="IOException">if an I/O error occurs</exception> public virtual void Store(IDataOutput os) { os.WriteInt(cells.Count); IEnumerator <char> i = cells.Keys.GetEnumerator(); for (; i.MoveNext();) { char c = i.Current; Cell e = At(c); if (e.cmd < 0 && e.@ref < 0) { continue; } os.WriteChar(c); os.WriteInt(e.cmd); os.WriteInt(e.cnt); os.WriteInt(e.@ref); os.WriteInt(e.skip); } }
/// <summary> /// Write the contents of this <see cref="Row"/> to the given output stream. /// </summary> /// <param name="os">the output stream</param> /// <exception cref="IOException">if an I/O error occurs</exception> public virtual void Store(IDataOutput os) { os.WriteInt(cells.Count); IEnumerator<char> i = cells.Keys.GetEnumerator(); for (; i.MoveNext();) { char c = i.Current; Cell e = At(c); if (e.cmd < 0 && e.@ref < 0) { continue; } os.WriteChar(c); os.WriteInt(e.cmd); os.WriteInt(e.cnt); os.WriteInt(e.@ref); os.WriteInt(e.skip); } }