mirror of
https://github.com/privatevoid-net/nix-super.git
synced 2024-09-20 16:38:05 +03:00
9b880e3e29
The new `MemorySourceAccessor` rather than being a slightly lossy flat map is a complete in-memory model of file system objects. Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
23 lines
497 B
C++
23 lines
497 B
C++
#include "memory-input-accessor.hh"
|
|
#include "memory-source-accessor.hh"
|
|
|
|
namespace nix {
|
|
|
|
struct MemoryInputAccessorImpl : MemoryInputAccessor, MemorySourceAccessor
|
|
{
|
|
SourcePath addFile(CanonPath path, std::string && contents) override
|
|
{
|
|
return {
|
|
ref(shared_from_this()),
|
|
MemorySourceAccessor::addFile(path, std::move(contents))
|
|
};
|
|
}
|
|
};
|
|
|
|
ref<MemoryInputAccessor> makeMemoryInputAccessor()
|
|
{
|
|
return make_ref<MemoryInputAccessorImpl>();
|
|
}
|
|
|
|
}
|