summaryrefslogtreecommitdiff
path: root/src/subrip_reader.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2016-02-11 11:46:13 +0000
committerCarl Hetherington <cth@carlh.net>2016-02-11 11:46:13 +0000
commit8fd43fface7757bd0d7228ff0490a8c8ad074175 (patch)
tree420c5f191afe48cfe1c5094838002e84739aea91 /src/subrip_reader.cc
parent4e4e5f750fea7bb011c5c12181a55b90b3202cb7 (diff)
Extract get_line_{file,stringstream} into standalone methods.
Diffstat (limited to 'src/subrip_reader.cc')
-rw-r--r--src/subrip_reader.cc29
1 files changed, 3 insertions, 26 deletions
diff --git a/src/subrip_reader.cc b/src/subrip_reader.cc
index ddaa112..6c0c63a 100644
--- a/src/subrip_reader.cc
+++ b/src/subrip_reader.cc
@@ -23,6 +23,7 @@
#include "subrip_reader.h"
#include "exceptions.h"
+#include "util.h"
#include <boost/algorithm/string.hpp>
#include <boost/lexical_cast.hpp>
#include <boost/regex.hpp>
@@ -47,37 +48,13 @@ using namespace sub;
SubripReader::SubripReader (string const & s)
{
stringstream str (s);
- this->read (boost::bind (&SubripReader::get_line_stringstream, this, &str));
+ this->read (boost::bind (&get_line_stringstream, &str));
}
/** @param f Subtitle file encoded in UTF-8 */
SubripReader::SubripReader (FILE* f)
{
- this->read (boost::bind (&SubripReader::get_line_file, this, f));
-}
-
-optional<string>
-SubripReader::get_line_stringstream (stringstream* str) const
-{
- string s;
- getline (*str, s);
- if (!str->good ()) {
- return optional<string> ();
- }
-
- return s;
-}
-
-optional<string>
-SubripReader::get_line_file (FILE* f) const
-{
- char buffer[256];
- char* r = fgets (buffer, sizeof (buffer), f);
- if (r == 0 || feof (f)) {
- return optional<string> ();
- }
-
- return string (buffer);
+ this->read (boost::bind (&get_line_file, f));
}
void