|
#ifndef RAVA_REPL_H
|
|
#define RAVA_REPL_H
|
|
|
|
#include "repl_types.h"
|
|
#include "repl_session.h"
|
|
#include "repl_input.h"
|
|
#include "repl_executor.h"
|
|
#include "repl_commands.h"
|
|
#include "repl_output.h"
|
|
#include "repl_history.h"
|
|
|
|
typedef struct {
|
|
RavaREPLSession_t *session;
|
|
RavaREPLInput_t *input;
|
|
RavaREPLExecutor_t *executor;
|
|
bool running;
|
|
bool interactive;
|
|
} RavaREPL_t;
|
|
|
|
RavaREPL_t* rava_repl_create(void);
|
|
void rava_repl_destroy(RavaREPL_t *repl);
|
|
|
|
int rava_repl_run(void);
|
|
bool rava_repl_process_line(RavaREPL_t *repl, const char *line);
|
|
|
|
void rava_repl_print_banner(void);
|
|
void rava_repl_print_prompt(RavaREPL_t *repl, bool continuation);
|
|
|
|
#endif
|