Implement return keyword

This commit is contained in:
Sam Mohr 2024-10-20 04:50:12 -07:00
parent 20a539a96d
commit b3e60f9d3a
No known key found for this signature in database
GPG key ID: EA41D161A3C1BC99
39 changed files with 594 additions and 80 deletions

View file

@ -188,6 +188,7 @@ fn to_encoder_list(env: &mut Env<'_>, fn_name: Symbol) -> (Expr, Variable) {
function_type: to_elem_encoder_fn_var,
closure_type: to_elem_encoder_lset,
return_type: elem_encoder_var,
early_returns: vec![],
name: to_elem_encoder_sym,
captured_symbols: vec![],
recursive: Recursive::NotRecursive,
@ -281,6 +282,7 @@ fn to_encoder_list(env: &mut Env<'_>, fn_name: Symbol) -> (Expr, Variable) {
function_type: fn_var,
closure_type: fn_clos_var,
return_type: this_encoder_var,
early_returns: vec![],
name: fn_name,
captured_symbols: vec![],
recursive: Recursive::NotRecursive,
@ -490,6 +492,7 @@ fn to_encoder_record(
function_type: fn_var,
closure_type: fn_clos_var,
return_type: this_encoder_var,
early_returns: vec![],
name: fn_name,
captured_symbols: vec![],
recursive: Recursive::NotRecursive,
@ -672,6 +675,7 @@ fn to_encoder_tuple(
function_type: fn_var,
closure_type: fn_clos_var,
return_type: this_encoder_var,
early_returns: vec![],
name: fn_name,
captured_symbols: vec![],
recursive: Recursive::NotRecursive,
@ -914,6 +918,7 @@ fn to_encoder_tag_union(
function_type: fn_var,
closure_type: fn_clos_var,
return_type: this_encoder_var,
early_returns: vec![],
name: fn_name,
captured_symbols: vec![],
recursive: Recursive::NotRecursive,
@ -1025,6 +1030,7 @@ fn wrap_in_encode_custom(
function_type: fn_var,
closure_type: fn_clos_var,
return_type: Variable::LIST_U8,
early_returns: vec![],
name: fn_name,
captured_symbols: vec![(captured_symbol, captured_var)],
recursive: Recursive::NotRecursive,