Language
Compiler
Options
$
'''
#include <cassert>
#include <filesystem>
#include <fstream>
#include <iostream>
#include <iterator>
#include <string>
using std::filesystem::path; // filesystem
using std::string; // string
static inline auto splice_file(const path &path, string s, string::size_type i) {
using std::ifstream; // fstream
using IFStreamIterator = std::istreambuf_iterator<char>; // iterator
assert(i <= s.size());
ifstream file{path, file.in | file.binary};
file.exceptions(file.badbit | file.failbit);
s.insert(s.cbegin() + i, IFStreamIterator{file}, IFStreamIterator{});
return s;
}
int main() {
using std::cout; // iostream
cout << splice_file(__FILE__, "'''\n\n'''\n", 4);
}
'''
Exit Code:
0