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
|
|
|
|
|
|
|
extern "C" void lib(Module& 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);
|
2023-09-24 12:22:01 +00:00
|
|
|
|
|
|
|
mod.register_function("+.", fkstd::add_float);
|
|
|
|
mod.register_function("-.", fkstd::sub_float);
|
|
|
|
mod.register_function("*.", fkstd::mul_float);
|
|
|
|
mod.register_function("/.", fkstd::div_float);
|
|
|
|
mod.register_function("%.", fkstd::mod_float);
|
|
|
|
mod.register_function("^.", fkstd::pow_float);
|
|
|
|
|
2023-09-21 21:30:51 +00:00
|
|
|
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-24 11:03:33 +00:00
|
|
|
|
|
|
|
mod.register_function("not", fkstd::bool_not);
|
2023-09-24 10:17:42 +00:00
|
|
|
mod.register_function("ref", fkstd::array_ref);
|
2023-09-20 19:21:51 +00:00
|
|
|
|
2023-09-22 12:17:21 +00:00
|
|
|
mod.register_macro("!", fkstd::set_addr);
|
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);
|
2023-09-21 21:30:51 +00:00
|
|
|
mod.register_macro("if", fkstd::if_macro);
|
2023-09-24 11:03:33 +00:00
|
|
|
mod.register_macro("and", fkstd::and_macro);
|
|
|
|
mod.register_macro("or", fkstd::or_macro);
|
2023-09-20 15:17:13 +00:00
|
|
|
}
|