kakoune/src/file.hh

33 lines
724 B
C++
Raw Normal View History

2011-09-02 18:51:20 +02:00
#ifndef file_hh_INCLUDED
#define file_hh_INCLUDED
#include <string>
2011-09-09 20:40:59 +02:00
#include "exception.hh"
2011-09-02 18:51:20 +02:00
2011-09-09 20:40:59 +02:00
namespace Kakoune
2011-09-02 18:51:20 +02:00
{
2011-09-09 20:40:59 +02:00
struct file_access_error : runtime_error
{
2011-09-09 20:40:59 +02:00
public:
file_access_error(const std::string& filename,
const std::string& error_desc)
: runtime_error(filename + ": " + error_desc) {}
};
2011-09-09 20:40:59 +02:00
struct file_not_found : file_access_error
2011-09-02 18:51:20 +02:00
{
2011-09-09 20:40:59 +02:00
file_not_found(const std::string& filename)
: file_access_error(filename, "file not found") {}
2011-09-02 18:51:20 +02:00
};
class Buffer;
std::string read_file(const std::string& filename);
2011-09-02 18:51:20 +02:00
Buffer* create_buffer_from_file(const std::string& filename);
void write_buffer_to_file(const Buffer& buffer, const std::string& filename);
}
#endif // file_hh_INCLUDED