Skip to main content

rl_lang/interpreter/stdlib/terminal/
clear.rs

1use crate::interpreter::stdlib::common::{verr, vnl, vok, vs};
2use crate::interpreter::{evaluator::Evaluator, values::Value};
3use crossterm::{
4    execute,
5    terminal::{Clear, ClearType},
6};
7use std::io::stdout;
8
9pub fn func(_: &mut Evaluator) -> Value {
10    match execute!(stdout(), Clear(ClearType::All)) {
11        Err(e) => verr!(vs!(format!("term_clear(): {}", e))),
12        Ok(_) => vok!(vnl!()),
13    }
14}