/** <inheritDoc /> */ public void UpdateReadStructure(int pathIdx, IList <BinaryStructureUpdate> updates) { lock (this) { _readerTypeStructure = _readerTypeStructure.Merge(pathIdx, updates); } }
/** <inheritDoc /> */ public void UpdateWriteStructure(BinaryStructure exp, int pathIdx, IList <BinaryStructureUpdate> updates) { lock (this) { _writerTypeStruct = _writerTypeStruct.Merge(exp, pathIdx, updates); } }
/** <inheritDoc /> */ public void UpdateWriteStructure(int pathIdx, IList <BinaryStructureUpdate> updates) { lock (this) { if (_writerTypeStruct == null) { // Null struct serves as an indication of a binary type that has never been sent to the cluster, // which is important for types without any fields. _writerTypeStruct = BinaryStructure.CreateEmpty(); } _writerTypeStruct = _writerTypeStruct.Merge(pathIdx, updates); } }