From 9f6124220a3245b7eb1ec21a29b5112595ebbe38 Mon Sep 17 00:00:00 2001 From: Thomas Goyne Date: Fri, 7 Mar 2014 16:30:20 -0800 Subject: [PATCH] Don't return a const std::string from GetData It has zero benefit and forces an extra copy. --- aegisub/src/ass_attachment.cpp | 4 ---- aegisub/src/ass_attachment.h | 2 +- aegisub/src/ass_dialogue.cpp | 8 -------- aegisub/src/ass_dialogue.h | 4 ++-- aegisub/src/ass_entry.h | 2 +- aegisub/src/ass_info.h | 2 +- aegisub/src/ass_style.h | 2 +- 7 files changed, 6 insertions(+), 18 deletions(-) diff --git a/aegisub/src/ass_attachment.cpp b/aegisub/src/ass_attachment.cpp index a5b06dfb7..77052ee48 100644 --- a/aegisub/src/ass_attachment.cpp +++ b/aegisub/src/ass_attachment.cpp @@ -63,10 +63,6 @@ AssEntry *AssAttachment::Clone() const { return new AssAttachment(*this); } -const std::string AssAttachment::GetEntryData() const { - return entry_data; -} - size_t AssAttachment::GetSize() const { auto header_end = entry_data.get().find('\n'); return entry_data.get().size() - header_end - 1; diff --git a/aegisub/src/ass_attachment.h b/aegisub/src/ass_attachment.h index 142b01441..67be60e47 100644 --- a/aegisub/src/ass_attachment.h +++ b/aegisub/src/ass_attachment.h @@ -46,7 +46,7 @@ public: /// @param raw If false, remove the SSA filename mangling std::string GetFileName(bool raw=false) const; - const std::string GetEntryData() const override; + std::string GetEntryData() const override { return entry_data; } AssEntryGroup Group() const override { return group; } AssEntry *Clone() const override; diff --git a/aegisub/src/ass_dialogue.cpp b/aegisub/src/ass_dialogue.cpp index 19f9568e2..b599611ea 100644 --- a/aegisub/src/ass_dialogue.cpp +++ b/aegisub/src/ass_dialogue.cpp @@ -177,14 +177,6 @@ std::string AssDialogue::GetData(bool ssa) const { return str; } -const std::string AssDialogue::GetEntryData() const { - return GetData(false); -} - -std::string AssDialogue::GetSSAText() const { - return GetData(true); -} - std::auto_ptr> AssDialogue::ParseTags() const { boost::ptr_vector Blocks; diff --git a/aegisub/src/ass_dialogue.h b/aegisub/src/ass_dialogue.h index 85b5a6f71..ea9f1078d 100644 --- a/aegisub/src/ass_dialogue.h +++ b/aegisub/src/ass_dialogue.h @@ -167,10 +167,10 @@ public: /// Update the text of the line from parsed blocks void UpdateText(boost::ptr_vector& blocks); - const std::string GetEntryData() const override; + std::string GetEntryData() const override { return GetData(false); } /// Get the line as SSA rather than ASS - std::string GetSSAText() const override; + std::string GetSSAText() const override { return GetData(true); } /// Does this line collide with the passed line? bool CollidesWith(const AssDialogue *target) const; diff --git a/aegisub/src/ass_entry.h b/aegisub/src/ass_entry.h index 466d44b9a..12105e634 100644 --- a/aegisub/src/ass_entry.h +++ b/aegisub/src/ass_entry.h @@ -60,7 +60,7 @@ public: std::string const& GroupHeader(bool ssa=false) const; /// @brief Get this line's raw entry data in ASS format - virtual const std::string GetEntryData() const=0; + virtual std::string GetEntryData() const=0; /// Get this line in SSA format virtual std::string GetSSAText() const { return GetEntryData(); } diff --git a/aegisub/src/ass_info.h b/aegisub/src/ass_info.h index 2e69d9a96..877bdc9b6 100644 --- a/aegisub/src/ass_info.h +++ b/aegisub/src/ass_info.h @@ -28,7 +28,7 @@ public: AssEntry *Clone() const override { return new AssInfo(*this); } AssEntryGroup Group() const override { return AssEntryGroup::INFO; } - const std::string GetEntryData() const override { return key + ": " + value; } + std::string GetEntryData() const override { return key + ": " + value; } std::string GetSSAText() const override { return boost::iequals(key, "scripttype: v4.00+") ? "ScriptType: v4.00" : GetEntryData(); } std::string Key() const { return key; } diff --git a/aegisub/src/ass_style.h b/aegisub/src/ass_style.h index 149fd3d13..6cfc82655 100644 --- a/aegisub/src/ass_style.h +++ b/aegisub/src/ass_style.h @@ -77,7 +77,7 @@ public: AssStyle(); AssStyle(std::string const& data, int version=1); - const std::string GetEntryData() const override { return data; } + std::string GetEntryData() const override { return data; } std::string GetSSAText() const override; AssEntryGroup Group() const override { return AssEntryGroup::STYLE; } AssEntry *Clone() const override;