#pragma once ///@file #include "eval.hh" namespace nix { struct AbstractNixRepl { ref state; Bindings * autoArgs; AbstractNixRepl(ref state) : state(state) { } virtual ~AbstractNixRepl() { } typedef std::vector> AnnotatedValues; static std::unique_ptr create( const SearchPath & searchPath, nix::ref store, ref state, std::function getValues); static ReplExitStatus runSimple( ref evalState, const ValMap & extraEnv); virtual void initEnv() = 0; virtual ReplExitStatus mainLoop() = 0; }; }