Skip to content

Commit 967e71c

Browse files
committed
Improve kernel constructor to respect kernelspec args
1 parent d9279c0 commit 967e71c

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

include/xeus-lite/xembind.hpp

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,16 +41,18 @@ namespace xeus
4141
xeus::xserver * get_server(xeus::xkernel * kernel);
4242

4343
template<class interpreter_type>
44-
std::unique_ptr<xkernel> make_xkernel()
44+
std::unique_ptr<xkernel> make_xkernel(ems::val js_argv)
4545
{
4646
xeus::xconfiguration config;
4747

4848
using history_manager_ptr = std::unique_ptr<xeus::xhistory_manager>;
4949
history_manager_ptr hist = xeus::make_in_memory_history_manager();
5050

51-
using interpreter_ptr = std::unique_ptr<interpreter_type>;
52-
53-
auto interpreter = interpreter_ptr(new interpreter_type());
51+
std::vector<std::string> args = ems::vecFromJSArray<std::string>(js_argv);
52+
53+
std::unique_ptr<interpreter_type> interpreter;
54+
interpreter = std::make_unique<interpreter_type>(args);
55+
5456
auto context = std::make_unique<xeus::xcontext_impl<empty_context_tag>>();
5557

5658
xeus::xkernel * kernel = new xeus::xkernel(config,

0 commit comments

Comments
 (0)