blob: 33dbca5ffcbce4c96c7ec07b00cc89998e96ed10 [file] [log] [blame]
// Copyright 2017 The PDFium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
#include "core/fxcrt/fx_stream.h"
bool IFX_WriteStream::WriteString(ByteStringView str) {
return WriteBlock(str.unsigned_span());
}
bool IFX_WriteStream::WriteByte(uint8_t byte) {
return WriteBlock(pdfium::byte_span_from_ref(byte));
}
bool IFX_WriteStream::WriteDWord(uint32_t i) {
char buf[20] = {};
FXSYS_itoa(i, buf, 10);
auto buf_span = pdfium::as_byte_span(buf);
// SAFETY: itoa() terminates buf.
return WriteBlock(buf_span.first(UNSAFE_BUFFERS(strlen(buf))));
}
bool IFX_WriteStream::WriteFilesize(FX_FILESIZE size) {
char buf[20] = {};
FXSYS_i64toa(size, buf, 10);
auto buf_span = pdfium::as_byte_span(buf);
// SAFETY: itoa() terminates buf.
return WriteBlock(buf_span.first(UNSAFE_BUFFERS(strlen(buf))));
}
bool IFX_SeekableReadStream::IsEOF() {
return false;
}
FX_FILESIZE IFX_SeekableReadStream::GetPosition() {
return 0;
}