summaryrefslogtreecommitdiff
path: root/klm/util/file.hh
diff options
context:
space:
mode:
authorKenneth Heafield <github@kheafield.com>2012-08-16 17:02:56 -0400
committerKenneth Heafield <github@kheafield.com>2012-08-16 17:07:51 -0400
commitdc078281c2fd83db9fc4860e8b24979ab2a1e407 (patch)
treec78afb93ccfac30614f7fa44374a44aa49288b0f /klm/util/file.hh
parent9c9213239263e8e8de2f154068cc3ad44e0c2100 (diff)
KenLM update. Remove a couple of segfaults for weird input. Other oddball stuff.
Diffstat (limited to 'klm/util/file.hh')
-rw-r--r--klm/util/file.hh8
1 files changed, 7 insertions, 1 deletions
diff --git a/klm/util/file.hh b/klm/util/file.hh
index 5c57e2a9..8af1ff4f 100644
--- a/klm/util/file.hh
+++ b/klm/util/file.hh
@@ -65,7 +65,10 @@ class scoped_FILE {
std::FILE *file_;
};
+// Open for read only.
int OpenReadOrThrow(const char *name);
+// Create file if it doesn't exist, truncate if it does. Opened for write.
+int CreateOrThrow(const char *name);
// Return value for SizeFile when it can't size properly.
const uint64_t kBadSize = (uint64_t)-1;
@@ -91,10 +94,13 @@ class TempMaker {
public:
explicit TempMaker(const std::string &prefix);
+ // These will already be unlinked for you.
int Make() const;
-
std::FILE *MakeFile() const;
+ // This will force you to close the fd instead of leaving it open.
+ std::string Name(scoped_fd &opened) const;
+
private:
std::string base_;
};