/// <inheritdoc /> public void WriteInteger32(int offset, Integer32Value value) { if (IsKnown) { ReferencedMemory.WriteInteger32(CurrentOffset + offset, value); } }
/// <inheritdoc /> public void WriteFloat64(int offset, Float64Value value) { if (IsKnown) { ReferencedMemory.WriteFloat64(CurrentOffset + offset, value); } }
/// <inheritdoc /> public void WriteBytes(int offset, ReadOnlySpan <byte> data, ReadOnlySpan <byte> knownBitMask) { if (IsKnown) { ReferencedMemory.WriteBytes(CurrentOffset + offset, data, knownBitMask); } }
/// <inheritdoc /> public void ReadBytes(int offset, Span <byte> memoryBuffer) { if (IsKnown) { ReferencedMemory.ReadBytes(CurrentOffset + offset, memoryBuffer); } }
/// <inheritdoc /> public void ReadBytes(int offset, Span <byte> memoryBuffer, Span <byte> knownBitmaskBuffer) { if (IsKnown) { ReferencedMemory.ReadBytes(CurrentOffset + offset, memoryBuffer, knownBitmaskBuffer); } else { knownBitmaskBuffer.Fill(0); } }
: new Float32Value(0); // TODO: unknown float32. /// <inheritdoc /> public Float64Value ReadFloat64(int offset) => IsKnown ? ReferencedMemory.ReadFloat64(CurrentOffset + offset) : new Float64Value(0); // TODO: unknown float64
/// <inheritdoc /> public Integer64Value ReadInteger64(int offset) => IsKnown ? ReferencedMemory.ReadInteger64(CurrentOffset + offset) : new Integer64Value(0, 0);