aboutsummaryrefslogtreecommitdiff
path: root/include/FileUtil.hpp
blob: 420ed72b056ad03b830586c5786e568ca195ee66 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#pragma once

#include <dchat/StringView.hpp>
#include <boost/filesystem/path.hpp>
#include <stdexcept>

namespace dchat
{
    class FileException : public std::runtime_error
    {
    public:
        FileException(const std::string &errMsg) : std::runtime_error(errMsg) {}
    };
    
    // Throws FileException on error.
    // Returned value is allocated with malloc and should be free'd by caller.
    StringView getFileContent(const boost::filesystem::path &filepath);
    
    // Throws FileException on error
    void fileReplace(const boost::filesystem::path &filepath, const StringView data);
}