summaryrefslogtreecommitdiff
path: root/src/builtins.rs
blob: 0a7426511c4be0d738c8b330fe1e12f58b486116 (plain)
use std::sync::mpsc::Receiver;

use happylock::ThreadKey;

use crate::pipe::Message;

pub type BuiltinProgram = fn(ThreadKey, Receiver<Message>);
pub static BUILTINS: &[Option<BuiltinProgram>] =
	&[None, Some(hello), Some(delsh::delsh), Some(dit::dit)];

mod delsh;
mod dit;
mod doer;

fn hello(key: ThreadKey, channel: Receiver<Message>) {
	println!("Hello, world!");
	drop(channel);
	drop(key);
}