nixd
Loading...
Searching...
No Matches
EvalProvider.h
Go to the documentation of this file.
1#pragma once
2
4
7
8#include <nixt/HookExpr.h>
9#include <nixt/PtrPool.h>
10
11#include <nix/expr/nixexpr.hh>
12
13namespace nixd {
14
16
17 nixt::PtrPool<nix::Expr> Pool;
18 nixt::ValueMap VMap;
19 nixt::EnvMap EMap;
20 std::unique_ptr<nix::EvalState> State;
21
22 llvm::unique_function<void(int)> Ready;
23
24public:
25 EvalProvider(std::unique_ptr<lspserver::InboundPort> In,
26 std::unique_ptr<lspserver::OutboundPort> Out);
27
29
32};
33
34} // namespace nixd
EvalProvider(std::unique_ptr< lspserver::InboundPort > In, std::unique_ptr< lspserver::OutboundPort > Out)
void onRegisterBC(const rpc::RegisterBCParams &Params)
void onExprValue(const rpc::ExprValueParams &Params, lspserver::Callback< rpc::ExprValueResponse >)
llvm::unique_function< void(llvm::Expected< T >)> Callback
Definition Function.h:14