Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions src/odr/internal/pdf/pdf_cmap_parser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,13 @@ static constexpr int_type eof = std::streambuf::traits_type::eof();

CMapParser::CMapParser(std::istream &in) : m_parser(in) {}

std::istream &CMapParser::in() const { return m_parser.in(); }
std::istream &CMapParser::in() { return m_parser.in(); }

std::streambuf &CMapParser::sb() const { return m_parser.sb(); }
std::streambuf &CMapParser::sb() { return m_parser.sb(); }

const ObjectParser &CMapParser::parser() const { return m_parser; }
const ObjectParser &CMapParser::parser() { return m_parser; }

std::variant<Object, std::string> CMapParser::read_token() const {
std::variant<Object, std::string> CMapParser::read_token() {
if (m_parser.peek_number()) {
return std::visit([](auto n) { return Object(n); },
m_parser.read_integer_or_real());
Expand Down Expand Up @@ -51,7 +51,7 @@ std::variant<Object, std::string> CMapParser::read_token() const {
}

void CMapParser::read_codespacerange(const std::uint32_t n,
[[maybe_unused]] const CMap &cmap) const {
[[maybe_unused]] const CMap &cmap) {
m_parser.skip_whitespace();
for (std::uint32_t i = 0; i < n; ++i) {
auto from_glyph = m_parser.read_object();
Expand All @@ -63,7 +63,7 @@ void CMapParser::read_codespacerange(const std::uint32_t n,
}
}

void CMapParser::read_bfchar(const std::uint32_t n, CMap &cmap) const {
void CMapParser::read_bfchar(const std::uint32_t n, CMap &cmap) {
m_parser.skip_whitespace();
for (std::uint32_t i = 0; i < n; ++i) {
std::string glyph = m_parser.read_object().as_string();
Expand All @@ -88,7 +88,7 @@ void CMapParser::read_bfchar(const std::uint32_t n, CMap &cmap) const {
}

void CMapParser::read_bfrange(const std::uint32_t n,
[[maybe_unused]] const CMap &cmap) const {
[[maybe_unused]] const CMap &cmap) {
m_parser.skip_whitespace();
for (std::uint32_t i = 0; i < n; ++i) {
auto from_glyph = m_parser.read_object();
Expand All @@ -102,7 +102,7 @@ void CMapParser::read_bfrange(const std::uint32_t n,
}
}

CMap CMapParser::parse_cmap() const {
CMap CMapParser::parse_cmap() {
CMap cmap;

std::uint32_t last_int{};
Expand Down
16 changes: 8 additions & 8 deletions src/odr/internal/pdf/pdf_cmap_parser.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,20 +16,20 @@ class CMapParser {

explicit CMapParser(std::istream &);

std::istream &in() const;
std::streambuf &sb() const;
const ObjectParser &parser() const;
[[nodiscard]] std::istream &in();
[[nodiscard]] std::streambuf &sb();
[[nodiscard]] const ObjectParser &parser();

CMap parse_cmap() const;
[[nodiscard]] CMap parse_cmap();

private:
ObjectParser m_parser;

Token read_token() const;
[[nodiscard]] Token read_token();

void read_codespacerange(std::uint32_t n, const CMap &) const;
void read_bfchar(std::uint32_t n, CMap &) const;
void read_bfrange(std::uint32_t n, const CMap &) const;
void read_codespacerange(std::uint32_t n, const CMap &cmap);
void read_bfchar(std::uint32_t n, CMap &cmap);
void read_bfrange(std::uint32_t n, const CMap &cmap);
};

} // namespace odr::internal::pdf
2 changes: 1 addition & 1 deletion src/odr/internal/pdf/pdf_document.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ struct Catalog;
struct Element;

struct Document {
Catalog *catalog;
Catalog *catalog{nullptr};
std::vector<std::unique_ptr<Element>> elements;

template <typename T, typename... Args> T *create_element(Args &&...args) {
Expand Down
2 changes: 1 addition & 1 deletion src/odr/internal/pdf/pdf_document_element.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ struct Pages final : Element {
struct Page final : Element {
Pages *parent{nullptr};

Resources *resources;
Resources *resources{nullptr};
std::vector<Annotation *> annotations;

// TODO remove
Expand Down
4 changes: 2 additions & 2 deletions src/odr/internal/pdf/pdf_document_parser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -167,9 +167,9 @@ Catalog *parse_catalog(DocumentParser &parser, const ObjectReference &reference,

DocumentParser::DocumentParser(std::istream &in) : m_parser(in) {}

std::istream &DocumentParser::in() const { return m_parser.in(); }
std::istream &DocumentParser::in() { return m_parser.in(); }

const FileParser &DocumentParser::parser() const { return m_parser; }
FileParser &DocumentParser::parser() { return m_parser; }

const Xref &DocumentParser::xref() const { return m_xref; }

Expand Down
4 changes: 2 additions & 2 deletions src/odr/internal/pdf/pdf_document_parser.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ class DocumentParser {
public:
explicit DocumentParser(std::istream &);

[[nodiscard]] std::istream &in() const;
[[nodiscard]] const FileParser &parser() const;
[[nodiscard]] std::istream &in();
[[nodiscard]] FileParser &parser();
[[nodiscard]] const Xref &xref() const;

const IndirectObject &read_object(const ObjectReference &reference);
Expand Down
22 changes: 11 additions & 11 deletions src/odr/internal/pdf/pdf_file_parser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,13 @@ namespace odr::internal::pdf {

FileParser::FileParser(std::istream &in) : m_parser(in) {}

std::istream &FileParser::in() const { return m_parser.in(); }
std::istream &FileParser::in() { return m_parser.in(); }

std::streambuf &FileParser::sb() const { return m_parser.sb(); }
std::streambuf &FileParser::sb() { return m_parser.sb(); }

const ObjectParser &FileParser::parser() const { return m_parser; }
ObjectParser &FileParser::parser() { return m_parser; }

IndirectObject FileParser::read_indirect_object() const {
IndirectObject FileParser::read_indirect_object() {
IndirectObject result;

result.reference.id = m_parser.read_unsigned_integer();
Expand Down Expand Up @@ -47,7 +47,7 @@ IndirectObject FileParser::read_indirect_object() const {
throw std::runtime_error("expected stream");
}

Trailer FileParser::read_trailer() const {
Trailer FileParser::read_trailer() {
m_parser.expect_characters("trailer");
m_parser.skip_whitespace();

Expand All @@ -62,7 +62,7 @@ Trailer FileParser::read_trailer() const {
return result;
}

Xref FileParser::read_xref() const {
Xref FileParser::read_xref() {
if (const std::string line = m_parser.read_line(); line != "xref") {
throw std::runtime_error("expected xref");
}
Expand Down Expand Up @@ -94,7 +94,7 @@ Xref FileParser::read_xref() const {
}
}

StartXref FileParser::read_start_xref() const {
StartXref FileParser::read_start_xref() {
if (const std::string line = m_parser.read_line(); line != "startxref") {
throw std::runtime_error("expected startxref");
}
Expand All @@ -108,7 +108,7 @@ StartXref FileParser::read_start_xref() const {
return result;
}

std::string FileParser::read_stream(const std::int32_t size) const {
std::string FileParser::read_stream(const std::int32_t size) {
std::string result;

if (size >= 0) {
Expand Down Expand Up @@ -140,7 +140,7 @@ std::string FileParser::read_stream(const std::int32_t size) const {
return result;
}

void FileParser::read_header() const {
void FileParser::read_header() {
const std::string header1 = m_parser.read_line();
const std::string header2 = m_parser.read_line();

Expand All @@ -151,7 +151,7 @@ void FileParser::read_header() const {
m_parser.skip_whitespace();
}

Entry FileParser::read_entry() const {
Entry FileParser::read_entry() {
std::uint32_t position = in().tellg();
const std::string entry_header = m_parser.read_line();
in().seekg(position);
Expand Down Expand Up @@ -179,7 +179,7 @@ Entry FileParser::read_entry() const {
throw std::runtime_error("unknown entry");
}

void FileParser::seek_start_xref(const std::uint32_t margin) const {
void FileParser::seek_start_xref(const std::uint32_t margin) {
in().seekg(0, std::ios::end);
const std::int64_t size = in().tellg();
in().seekg(std::max(static_cast<std::int64_t>(0), size - margin),
Expand Down
22 changes: 11 additions & 11 deletions src/odr/internal/pdf/pdf_file_parser.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -17,21 +17,21 @@ class FileParser {
public:
explicit FileParser(std::istream &);

[[nodiscard]] std::istream &in() const;
[[nodiscard]] std::streambuf &sb() const;
[[nodiscard]] const ObjectParser &parser() const;
[[nodiscard]] std::istream &in();
[[nodiscard]] std::streambuf &sb();
[[nodiscard]] ObjectParser &parser();

[[nodiscard]] IndirectObject read_indirect_object() const;
[[nodiscard]] Trailer read_trailer() const;
[[nodiscard]] Xref read_xref() const;
[[nodiscard]] StartXref read_start_xref() const;
[[nodiscard]] IndirectObject read_indirect_object();
[[nodiscard]] Trailer read_trailer();
[[nodiscard]] Xref read_xref();
[[nodiscard]] StartXref read_start_xref();

[[nodiscard]] std::string read_stream(std::int32_t size) const;
[[nodiscard]] std::string read_stream(std::int32_t size);

void read_header() const;
[[nodiscard]] Entry read_entry() const;
void read_header();
[[nodiscard]] Entry read_entry();

void seek_start_xref(std::uint32_t margin = 64) const;
void seek_start_xref(std::uint32_t margin = 64);

private:
ObjectParser m_parser;
Expand Down
2 changes: 1 addition & 1 deletion src/odr/internal/pdf/pdf_graphics_operator.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ struct GraphicsOperator {
using Argument = Object;
using Arguments = std::vector<Argument>;

GraphicsOperatorType type;
GraphicsOperatorType type{GraphicsOperatorType::unknown};
Arguments arguments;
};

Expand Down
8 changes: 4 additions & 4 deletions src/odr/internal/pdf/pdf_graphics_operator_parser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -115,11 +115,11 @@ static constexpr int_type eof = std::streambuf::traits_type::eof();
GraphicsOperatorParser::GraphicsOperatorParser(std::istream &in)
: m_parser(in) {}

std::istream &GraphicsOperatorParser::in() const { return m_parser.in(); }
std::istream &GraphicsOperatorParser::in() { return m_parser.in(); }

std::streambuf &GraphicsOperatorParser::sb() const { return m_parser.sb(); }
std::streambuf &GraphicsOperatorParser::sb() { return m_parser.sb(); }

std::string GraphicsOperatorParser::read_operator_name() const {
std::string GraphicsOperatorParser::read_operator_name() {
std::string result;

while (true) {
Expand All @@ -137,7 +137,7 @@ std::string GraphicsOperatorParser::read_operator_name() const {
}
}

GraphicsOperator GraphicsOperatorParser::read_operator() const {
GraphicsOperator GraphicsOperatorParser::read_operator() {
GraphicsOperator result;

while (true) {
Expand Down
12 changes: 4 additions & 8 deletions src/odr/internal/pdf/pdf_graphics_operator_parser.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,22 +4,18 @@

namespace odr::internal::pdf {

class SimpleArray;
class SimpleArrayElement;
class GraphicsArgument;
enum class GraphicsOperatorType;
struct GraphicsOperator;

class GraphicsOperatorParser {
public:
explicit GraphicsOperatorParser(std::istream &);

[[nodiscard]] std::istream &in() const;
[[nodiscard]] std::streambuf &sb() const;
[[nodiscard]] std::istream &in();
[[nodiscard]] std::streambuf &sb();

[[nodiscard]] std::string read_operator_name() const;
[[nodiscard]] std::string read_operator_name();

[[nodiscard]] GraphicsOperator read_operator() const;
[[nodiscard]] GraphicsOperator read_operator();

private:
ObjectParser m_parser;
Expand Down
2 changes: 1 addition & 1 deletion src/odr/internal/pdf/pdf_graphics_state.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ struct GraphicsState {
GraphicsState();

State &current();
const State &current() const;
[[nodiscard]] const State &current() const;

void execute(const GraphicsOperator &);
};
Expand Down
Loading