fakir/libstd/lib.cpp

30 lines
968 B
C++
Raw Normal View History

2023-09-20 15:17:13 +00:00
#include "commons.hpp"
#include "fun.hpp"
2023-09-20 19:21:51 +00:00
#include "macro.hpp"
2023-09-20 15:17:13 +00:00
2023-09-22 11:27:13 +00:00
Module* glob_mod;
2023-09-20 15:17:13 +00:00
extern "C" void lib(Module& mod)
{
2023-09-22 11:27:13 +00:00
glob_mod = &mod;
2023-09-20 19:21:51 +00:00
mod.register_function("assert=", fkstd::assert_eq);
2023-09-20 15:17:13 +00:00
mod.register_function("println", fkstd::println);
2023-09-21 20:26:13 +00:00
mod.register_function("+", fkstd::add_int);
mod.register_function("-", fkstd::sub_int);
mod.register_function("*", fkstd::mul_int);
mod.register_function("/", fkstd::div_int);
mod.register_function("%", fkstd::mod_int);
mod.register_function("^", fkstd::pow_int);
mod.register_function("<", fkstd::lt);
mod.register_function("<=", fkstd::le);
mod.register_function(">", fkstd::gt);
mod.register_function(">=", fkstd::ge);
mod.register_function("=", fkstd::eq);
mod.register_function("<>", fkstd::ne);
2023-09-20 19:21:51 +00:00
mod.register_macro("assert-static-fail", fkstd::assert_static_fail);
2023-09-21 13:59:46 +00:00
mod.register_macro(":", fkstd::block);
mod.register_macro("$", fkstd::decl);
mod.register_macro("if", fkstd::if_macro);
2023-09-20 15:17:13 +00:00
}