6 #define CADABRA_CLI_DEBUG_MARKER
10 #include <pybind11/pybind11.h>
11 #include <pybind11/embed.h>
12 #ifdef CADABRA_CLI_DEBUG_MARKER
14 #undef CADABRA_CLI_DEBUG_MARKER
34 pybind11::object
evaluate(
const std::string& code,
const std::string& filename =
"<stdin>");
35 void execute(
const std::string& code,
const std::string& filename =
"<stdin>");
36 void execute_file(
const std::string& filename,
bool preprocess =
true);
37 void interact_file(
const std::string& filename,
bool preprocess =
true);
47 std::string
str(
const pybind11::handle& obj);
48 std::string
repr(
const pybind11::handle& obj);
81 virtual const char*
what()
const noexcept
override;
Shell::Flags & operator|=(Shell::Flags &lhs, Shell::Flags rhs)
Definition: cadabra2-cli.cc:547
bool operator&(Shell::Flags lhs, Shell::Flags rhs)
Definition: cadabra2-cli.cc:560
Shell::Flags operator|(Shell::Flags lhs, Shell::Flags rhs)
Definition: cadabra2-cli.cc:555
Definition: cadabra2-cli.hh:75
virtual const char * what() const noexcept override
Definition: cadabra2-cli.cc:542
ExitRequest()
Definition: cadabra2-cli.cc:533
std::string message
Definition: cadabra2-cli.hh:84
int code
Definition: cadabra2-cli.hh:83
Definition: cadabra2-cli.hh:18
std::string str(const pybind11::handle &obj)
Definition: cadabra2-cli.cc:364
void interact()
Definition: cadabra2-cli.cc:118
std::string site_path
Definition: cadabra2-cli.hh:45
void restart()
Definition: cadabra2-cli.cc:97
void process_ps2(const std::string &line)
Definition: cadabra2-cli.cc:444
std::string sanitize(std::string s)
Definition: cadabra2-cli.cc:379
Flags flags
Definition: cadabra2-cli.hh:71
void set_completion_callback(const char *buffer, std::vector< std::string > &completions)
Definition: cadabra2-cli.cc:457
pybind11::object py_stderr
Definition: cadabra2-cli.hh:63
pybind11::object evaluate(const std::string &code, const std::string &filename="<stdin>")
Definition: cadabra2-cli.cc:190
std::string collect
Definition: cadabra2-cli.hh:64
const char * colour_reset
Definition: cadabra2-cli.hh:70
const char * colour_info
Definition: cadabra2-cli.hh:68
pybind11::object sys
Definition: cadabra2-cli.hh:62
void interact_file(const std::string &filename, bool preprocess=true)
Definition: cadabra2-cli.cc:243
std::string get_ps2()
Definition: cadabra2-cli.cc:485
std::string repr(const pybind11::handle &obj)
Definition: cadabra2-cli.cc:369
void set_histfile()
Definition: cadabra2-cli.cc:329
~Shell()
Definition: cadabra2-cli.cc:91
Flags
Definition: cadabra2-cli.hh:21
const char * colour_warning
Definition: cadabra2-cli.hh:67
void handle_error()
Definition: cadabra2-cli.cc:493
void write_stderr(const std::string &text, const std::string &end="\n", bool flush=false)
Definition: cadabra2-cli.cc:317
std::string histfile
Definition: cadabra2-cli.hh:44
void execute_file(const std::string &filename, bool preprocess=true)
Definition: cadabra2-cli.cc:215
const char * colour_success
Definition: cadabra2-cli.hh:69
pybind11::object py_stdout
Definition: cadabra2-cli.hh:63
void execute(const std::string &code, const std::string &filename="<stdin>")
Definition: cadabra2-cli.cc:203
const char * colour_error
Definition: cadabra2-cli.hh:66
void write_stdout(const std::string &text, const std::string &end="\n", bool flush=false)
Definition: cadabra2-cli.cc:305
pybind11::dict globals
Definition: cadabra2-cli.hh:61
std::string get_ps1()
Definition: cadabra2-cli.cc:477
void process_ps1(const std::string &line)
Definition: cadabra2-cli.cc:385
void handle_error(pybind11::error_already_set &err)
Shell(Flags flags)
Definition: cadabra2-cli.cc:68
Ex rhs(Ex_ptr ex)
Definition: py_ex.cc:375
Ex lhs(Ex_ptr ex)
Definition: py_ex.cc:363
end
Definition: nevaluate.py:22
Flush flush
Definition: Snoop.cc:63