nixir/src/irc/evaluator.h
NotAShelf 98fd1bfc52
various: format with clang-format
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ib9abc9d2dcd036d3680c5aa3dc919bfa6a6a6964
2026-02-22 00:18:21 +03:00

34 lines
557 B
C++

#ifndef NIX_IRC_EVALUATOR_H
#define NIX_IRC_EVALUATOR_H
#include "types.h"
#include <memory>
#include <vector>
namespace nix {
class EvalState;
class Value;
class PosIdx;
} // namespace nix
namespace nix_irc {
class IRValue;
class IREnvironment;
class Evaluator {
public:
explicit Evaluator(nix::EvalState& state);
~Evaluator();
void eval_to_nix(const std::shared_ptr<Node>& ir_node, nix::Value& result,
IREnvironment* env = nullptr);
private:
struct Impl;
std::unique_ptr<Impl> pImpl;
};
} // namespace nix_irc
#endif