added placeholder implementation

This commit is contained in:
Theo Felippe 2021-11-11 19:13:42 +00:00
parent dfd14f8e49
commit 84af26d813
3 changed files with 32 additions and 0 deletions

View file

@ -192,6 +192,7 @@ pub fn builtin_defs_map(symbol: Symbol, var_store: &mut VarStore) -> Option<Def>
RESULT_MAP_ERR => result_map_err,
RESULT_AFTER => result_after,
RESULT_WITH_DEFAULT => result_with_default,
RESULT_IS_OK => result_is_ok,
}
}
@ -3991,6 +3992,29 @@ fn result_with_default(symbol: Symbol, var_store: &mut VarStore) -> Def {
)
}
fn result_is_ok(symbol: Symbol, var_store: &mut VarStore) -> Def {
let arg_var = var_store.fresh();
let bool_var = var_store.fresh();
// placeholder for actual implementation
let body = RunLowLevel {
op: LowLevel::Eq,
args: vec![
(arg_var, Var(Symbol::ARG_1)),
(arg_var, Var(Symbol::ARG_1)),
],
ret_var: bool_var,
};
defn(
symbol,
vec![(arg_var, Symbol::ARG_1)],
var_store,
body,
bool_var,
)
}
fn result_after(symbol: Symbol, var_store: &mut VarStore) -> Def {
let ret_var = var_store.fresh();
let func_var = var_store.fresh();