|
@@ -1,4 +1,3 @@
|
|
|
-#include "qirt.h"
|
|
|
qi_value_t *__qistd0(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "l", qi_list_index(pargs, 0));
|
|
|
return qi_index(state, qi_get(state, "l"), qi_make_number(state, 0));return state->nil;
|
|
@@ -73,19 +72,31 @@ return list;
|
|
|
}
|
|
|
qi_value_t *__qistd5(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "x", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_in(state, qi_call(state, qi_get(state, "type"), __qistd6(state)), qi_make_tuple(state, __qistd7(state))))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: list, string or bytes, but got: "), qi_call(state, qi_get(state, "type"), __qistd8(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "r", qi_make_list(state, NULL));
|
|
|
+qi_new_scope(state);
|
|
|
qi_decl(state, "i", qi_sub(state, qi_call(state, qi_get(state, "len"), __qistd10(state)), qi_make_number(state, 1)));
|
|
|
while (_qi_truthy(state, qi_ge(state, qi_get(state, "i"), qi_make_number(state, 0)))) {
|
|
|
(void)(qi_call(state, qi_get(state, "list_push"), __qistd11(state)));__continue9:;
|
|
|
qi_set(state, false, "i", qi_sub(state, qi_get(state, "i"), state->one));
|
|
|
}
|
|
|
__break9:;
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "type"), __qistd12(state)), qi_make_string(state, "string")))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "list_join"), __qistd13(state));} else {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "type"), __qistd14(state)), qi_make_string(state, "bytes")))) {
|
|
|
-return qi_call(state, qi_get(state, "bytes"), __qistd15(state));}}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_old_scope(state);
|
|
|
+return qi_call(state, qi_get(state, "bytes"), __qistd15(state));}
|
|
|
+qi_old_scope(state);
|
|
|
+}
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "r");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -151,10 +162,12 @@ qi_value_t *__qistd16(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "f", qi_list_index(pargs, 0));
|
|
|
qi_decl(state, "s", state->nil);
|
|
|
qi_decl(state, "t", state->nil);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_ge(state, qi_call(state, qi_get(state, "len"), __qistd17(state)), qi_make_number(state, 3)))) {
|
|
|
(void)(qi_set(state, false, "t", qi_index(state, qi_get(state, "arguments"), qi_make_number(state, 1))));
|
|
|
(void)(qi_set(state, false, "s", qi_index(state, qi_get(state, "arguments"), qi_make_number(state, 2))));
|
|
|
} else {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_ge(state, qi_call(state, qi_get(state, "len"), __qistd18(state)), qi_make_number(state, 2)))) {
|
|
|
(void)(qi_set(state, false, "t", qi_index(state, qi_get(state, "arguments"), qi_make_number(state, 1))));
|
|
|
(void)(qi_set(state, false, "s", qi_make_number(state, 1)));
|
|
@@ -162,22 +175,36 @@ if (_qi_truthy(state, qi_ge(state, qi_call(state, qi_get(state, "len"), __qistd1
|
|
|
(void)(qi_set(state, false, "t", qi_get(state, "f")));
|
|
|
(void)(qi_set(state, false, "f", qi_make_number(state, 0)));
|
|
|
(void)(qi_set(state, false, "s", qi_make_number(state, 1)));
|
|
|
-}}
|
|
|
+}
|
|
|
+qi_old_scope(state);
|
|
|
+}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd19(state)), qi_make_string(state, "number")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: number, but got: "), qi_call(state, qi_get(state, "type"), __qistd20(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd21(state)), qi_make_string(state, "number")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: number, but got: "), qi_call(state, qi_get(state, "type"), __qistd22(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd23(state)), qi_make_string(state, "number")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected third argument to be: number, but got: "), qi_call(state, qi_get(state, "type"), __qistd24(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_gt(state, qi_get(state, "f"), qi_get(state, "t")))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "reverse"), __qistd25(state));}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "r", qi_make_list(state, NULL));
|
|
|
+qi_new_scope(state);
|
|
|
qi_decl(state, "i", qi_get(state, "f"));
|
|
|
while (_qi_truthy(state, qi_lt(state, qi_get(state, "i"), qi_get(state, "t")))) {
|
|
|
(void)(qi_call(state, qi_get(state, "list_push"), __qistd28(state)));__continue27:;
|
|
|
qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), qi_get(state, "s")));
|
|
|
}
|
|
|
__break27:;
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "r");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -262,8 +289,10 @@ return list;
|
|
|
}
|
|
|
qi_value_t *__qistd42(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "name", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd43(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd44(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
qi_bool b = qi_find(state, qi_get(state, "name")->value.string) != NULL;
|
|
|
return qi_make_boolean(state, b);
|
|
|
return state->nil;
|
|
@@ -293,20 +322,29 @@ qi_value_t *__qistd45(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "first", pargc >= 3? qi_list_index(pargs, 2): qi_get(state, "false"));
|
|
|
qi_decl(state, "l", qi_list_index(pargs, 0));
|
|
|
qi_decl(state, "x", qi_list_index(pargs, 1));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd47(state)), qi_make_string(state, "list")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: list, but got: "), qi_call(state, qi_get(state, "type"), __qistd48(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
__label46:;
|
|
|
+qi_new_scope(state);
|
|
|
qi_decl(state, "i", qi_make_number(state, 0));
|
|
|
while (_qi_truthy(state, qi_lt(state, qi_get(state, "i"), qi_call(state, qi_get(state, "len"), __qistd50(state))))) {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_index(state, qi_get(state, "l"), qi_get(state, "i")), qi_get(state, "x")))) {
|
|
|
(void)(qi_call(state, qi_get(state, "list_delete"), __qistd51(state)));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_get(state, "first"))) {
|
|
|
goto __break49;}
|
|
|
+qi_old_scope(state);
|
|
|
goto __label46;
|
|
|
-}__continue49:;
|
|
|
+}
|
|
|
+qi_old_scope(state);
|
|
|
+__continue49:;
|
|
|
qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), state->one));
|
|
|
}
|
|
|
__break49:;
|
|
|
+qi_old_scope(state);
|
|
|
return state->nil;
|
|
|
}
|
|
|
inline static qi_list_t *__qistd53(qi_state_t *state) {
|
|
@@ -346,29 +384,41 @@ return list;
|
|
|
}
|
|
|
qi_value_t *__qistd52(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "l", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd53(state)), qi_make_string(state, "list")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: list, but got: "), qi_call(state, qi_get(state, "type"), __qistd54(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "r", state->empty_string);
|
|
|
qi_decl(state, "s", state->nil);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "len"), __qistd55(state)), qi_make_number(state, 1)))) {
|
|
|
(void)(qi_set(state, false, "s", state->empty_string));} else {
|
|
|
(void)(qi_set(state, false, "s", qi_index(state, qi_get(state, "arguments"), qi_make_number(state, 1))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd56(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd57(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "first", qi_get(state, "true"));
|
|
|
+qi_new_scope(state);
|
|
|
qi_value_t *__qistd59 = qi_iter(state, qi_get(state, "l"));
|
|
|
qi_decl(state, "x", state->nil);
|
|
|
for (qi_size_t length = _qi_length(state, __qistd59), i = 0; i < length; i++) {
|
|
|
qi_set(state, false, "x", qi_index(state, __qistd59, qi_make_number(state, i)));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd60(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected sequence item to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd61(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_and(state, qi_not_equals(state, qi_get(state, "s"), state->empty_string), qi_not(state, qi_get(state, "first"))))) {
|
|
|
(void)(qi_set(state, false, "r", qi_add(state, qi_get(state, "r"), qi_get(state, "s"))));}
|
|
|
+qi_old_scope(state);
|
|
|
(void)(qi_set(state, false, "r", qi_add(state, qi_get(state, "r"), qi_get(state, "x"))));
|
|
|
(void)(qi_set(state, false, "first", qi_get(state, "false")));
|
|
|
__continue58:;
|
|
|
}
|
|
|
__break58:;
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "r");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -401,10 +451,14 @@ return list;
|
|
|
qi_value_t *__qistd62(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "i", qi_list_index(pargs, 1));
|
|
|
qi_decl(state, "l", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd63(state)), qi_make_string(state, "list")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: list, but got: "), qi_call(state, qi_get(state, "type"), __qistd64(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd65(state)), qi_make_string(state, "number")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: number, but got: "), qi_call(state, qi_get(state, "type"), __qistd66(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "x", qi_index(state, qi_get(state, "l"), qi_get(state, "i")));
|
|
|
(void)(qi_call(state, qi_get(state, "list_delete"), __qistd67(state)));
|
|
|
return qi_get(state, "x");
|
|
@@ -454,29 +508,43 @@ return list;
|
|
|
qi_value_t *__qistd68(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "cmp", pargc >= 2? qi_list_index(pargs, 1): qi_make_function(state, "<anon>", 2, __qistd69, NULL));
|
|
|
qi_decl(state, "l", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd70(state)), qi_make_string(state, "list")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: list, but got: "), qi_call(state, qi_get(state, "type"), __qistd71(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd72(state)), qi_make_string(state, "function")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: function, but got: "), qi_call(state, qi_get(state, "type"), __qistd73(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "len"), __qistd74(state)), qi_make_number(state, 0)))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "l");}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "z", qi_call(state, qi_get(state, "len"), __qistd75(state)));
|
|
|
+qi_new_scope(state);
|
|
|
qi_decl(state, "i", qi_make_number(state, 0));
|
|
|
while (_qi_truthy(state, qi_lt(state, qi_get(state, "i"), qi_sub(state, qi_get(state, "z"), qi_make_number(state, 1))))) {
|
|
|
+qi_new_scope(state);
|
|
|
qi_decl(state, "j", qi_make_number(state, 0));
|
|
|
while (_qi_truthy(state, qi_lt(state, qi_get(state, "j"), qi_sub(state, qi_sub(state, qi_get(state, "z"), qi_make_number(state, 1)), qi_get(state, "i"))))) {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_call(state, qi_get(state, "cmp"), __qistd78(state)))) {
|
|
|
qi_decl_const(state, "tmp", qi_index(state, qi_get(state, "l"), qi_get(state, "j")));
|
|
|
(void)(qi_index_set(state, false, qi_get(state, "l"), qi_get(state, "j"), qi_index(state, qi_get(state, "l"), qi_add(state, qi_get(state, "j"), qi_make_number(state, 1)))));
|
|
|
(void)(qi_index_set(state, false, qi_get(state, "l"), qi_add(state, qi_get(state, "j"), qi_make_number(state, 1)), qi_get(state, "tmp")));
|
|
|
-}__continue77:;
|
|
|
+}
|
|
|
+qi_old_scope(state);
|
|
|
+__continue77:;
|
|
|
qi_set(state, false, "j", qi_add(state, qi_get(state, "j"), state->one));
|
|
|
}
|
|
|
__break77:;
|
|
|
+qi_old_scope(state);
|
|
|
__continue76:;
|
|
|
qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), state->one));
|
|
|
}
|
|
|
__break76:;
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "l");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -526,10 +594,14 @@ return list;
|
|
|
}
|
|
|
qi_value_t *__qistd83(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "l", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd84(state)), qi_make_string(state, "list")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: list, but got: "), qi_call(state, qi_get(state, "type"), __qistd85(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_call(state, qi_get(state, "is_empty"), __qistd86(state)))) {
|
|
|
qi_throw(state, qi_make_string(state, "shift from empty list"));}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "a", qi_index(state, qi_get(state, "l"), qi_make_number(state, 0)));
|
|
|
(void)(qi_call(state, qi_get(state, "list_delete"), __qistd87(state)));
|
|
|
return qi_get(state, "a");
|
|
@@ -664,44 +736,75 @@ return list;
|
|
|
}
|
|
|
qi_value_t *__qistd90(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "l", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_in(state, qi_call(state, qi_get(state, "type"), __qistd91(state)), qi_make_tuple(state, __qistd92(state))))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: list, string or bytes, but got: "), qi_call(state, qi_get(state, "type"), __qistd93(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "r", qi_make_list(state, NULL));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "len"), __qistd94(state)), qi_make_number(state, 2)))) {
|
|
|
qi_decl(state, "f", qi_index(state, qi_get(state, "arguments"), qi_make_number(state, 1)));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd95(state)), qi_make_string(state, "number")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: number, but got: "), qi_call(state, qi_get(state, "type"), __qistd96(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_lt(state, qi_get(state, "f"), qi_make_number(state, 0)))) {
|
|
|
(void)(qi_set(state, false, "f", qi_add(state, qi_get(state, "f"), qi_call(state, qi_get(state, "len"), __qistd97(state)))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
qi_decl(state, "i", qi_get(state, "f"));
|
|
|
while (_qi_truthy(state, qi_lt(state, qi_get(state, "i"), qi_call(state, qi_get(state, "len"), __qistd99(state))))) {
|
|
|
(void)(qi_call(state, qi_get(state, "list_push"), __qistd100(state)));__continue98:;
|
|
|
qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), state->one));
|
|
|
}
|
|
|
__break98:;
|
|
|
+qi_old_scope(state);
|
|
|
} else {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "len"), __qistd101(state)), qi_make_number(state, 3)))) {
|
|
|
qi_decl(state, "f", qi_index(state, qi_get(state, "arguments"), qi_make_number(state, 1)));
|
|
|
qi_decl(state, "t", qi_index(state, qi_get(state, "arguments"), qi_make_number(state, 2)));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd102(state)), qi_make_string(state, "number")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: number, but got: "), qi_call(state, qi_get(state, "type"), __qistd103(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd104(state)), qi_make_string(state, "number")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected third argument to be: number, but got: "), qi_call(state, qi_get(state, "type"), __qistd105(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_lt(state, qi_get(state, "f"), qi_make_number(state, 0)))) {
|
|
|
(void)(qi_set(state, false, "f", qi_add(state, qi_get(state, "f"), qi_call(state, qi_get(state, "len"), __qistd106(state)))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_lt(state, qi_get(state, "t"), qi_make_number(state, 0)))) {
|
|
|
(void)(qi_set(state, false, "t", qi_add(state, qi_get(state, "t"), qi_call(state, qi_get(state, "len"), __qistd107(state)))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
qi_decl(state, "i", qi_get(state, "f"));
|
|
|
while (_qi_truthy(state, qi_and(state, qi_lt(state, qi_get(state, "i"), qi_call(state, qi_get(state, "len"), __qistd109(state))), qi_le(state, qi_get(state, "i"), qi_get(state, "t"))))) {
|
|
|
(void)(qi_call(state, qi_get(state, "list_push"), __qistd110(state)));__continue108:;
|
|
|
qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), state->one));
|
|
|
}
|
|
|
__break108:;
|
|
|
-}}
|
|
|
+qi_old_scope(state);
|
|
|
+}
|
|
|
+qi_old_scope(state);
|
|
|
+}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "type"), __qistd111(state)), qi_make_string(state, "string")))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "list_join"), __qistd112(state));} else {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "type"), __qistd113(state)), qi_make_string(state, "bytes")))) {
|
|
|
-return qi_call(state, qi_get(state, "bytes"), __qistd114(state));}}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_old_scope(state);
|
|
|
+return qi_call(state, qi_get(state, "bytes"), __qistd114(state));}
|
|
|
+qi_old_scope(state);
|
|
|
+}
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "r");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -740,10 +843,15 @@ return list;
|
|
|
qi_value_t *__qistd115(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "p", qi_list_index(pargs, 1));
|
|
|
qi_decl(state, "s", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd116(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd117(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_lt(state, qi_call(state, qi_get(state, "len"), __qistd118(state)), qi_call(state, qi_get(state, "len"), __qistd119(state))))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "false");}
|
|
|
+qi_old_scope(state);
|
|
|
return qi_equals(state, qi_call(state, qi_get(state, "slice"), __qistd120(state)), qi_get(state, "p"));
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -786,10 +894,15 @@ return list;
|
|
|
qi_value_t *__qistd122(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "p", qi_list_index(pargs, 1));
|
|
|
qi_decl(state, "s", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd123(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd124(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_lt(state, qi_call(state, qi_get(state, "len"), __qistd125(state)), qi_call(state, qi_get(state, "len"), __qistd126(state))))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "false");}
|
|
|
+qi_old_scope(state);
|
|
|
return qi_equals(state, qi_call(state, qi_get(state, "slice"), __qistd127(state)), qi_get(state, "p"));
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -859,30 +972,43 @@ return list;
|
|
|
}
|
|
|
qi_value_t *__qistd130(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "s", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_or(state, qi_equals(state, qi_call(state, qi_get(state, "len"), __qistd131(state)), qi_make_number(state, 1)), qi_equals(state, qi_index(state, qi_get(state, "arguments"), qi_make_number(state, 1)), state->empty_string)))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "list"), __qistd132(state));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd133(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be:!string, but got: "), qi_call(state, qi_get(state, "type"), __qistd134(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "r", qi_make_list(state, NULL));
|
|
|
qi_decl(state, "d", qi_index(state, qi_get(state, "arguments"), qi_make_number(state, 1)));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd135(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd136(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "t", state->empty_string);
|
|
|
+qi_new_scope(state);
|
|
|
qi_decl(state, "i", qi_make_number(state, 0));
|
|
|
while (_qi_truthy(state, qi_lt(state, qi_get(state, "i"), qi_call(state, qi_get(state, "len"), __qistd138(state))))) {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "slice"), __qistd139(state)), qi_get(state, "d")))) {
|
|
|
(void)(qi_call(state, qi_get(state, "list_push"), __qistd141(state)));
|
|
|
(void)(qi_set(state, false, "t", state->empty_string));
|
|
|
(void)(qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), qi_sub(state, qi_call(state, qi_get(state, "len"), __qistd142(state)), qi_make_number(state, 1)))));
|
|
|
goto __continue137;
|
|
|
}
|
|
|
+qi_old_scope(state);
|
|
|
(void)(qi_set(state, false, "t", qi_add(state, qi_get(state, "t"), qi_index(state, qi_get(state, "s"), qi_get(state, "i")))));
|
|
|
__continue137:;
|
|
|
qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), state->one));
|
|
|
}
|
|
|
__break137:;
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_get(state, "t"), state->empty_string))) {
|
|
|
(void)(qi_call(state, qi_get(state, "list_push"), __qistd143(state)));}
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "r");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -942,25 +1068,35 @@ qi_value_t *__qistd144(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "b", qi_list_index(pargs, 2));
|
|
|
qi_decl(state, "s", qi_list_index(pargs, 0));
|
|
|
qi_decl(state, "w", qi_list_index(pargs, 1));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd145(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd146(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd147(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd148(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd149(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected third argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd150(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "r", state->empty_string);
|
|
|
+qi_new_scope(state);
|
|
|
qi_decl(state, "i", qi_make_number(state, 0));
|
|
|
while (_qi_truthy(state, qi_lt(state, qi_get(state, "i"), qi_call(state, qi_get(state, "len"), __qistd152(state))))) {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "slice"), __qistd153(state)), qi_get(state, "w")))) {
|
|
|
(void)(qi_set(state, false, "r", qi_add(state, qi_get(state, "r"), qi_get(state, "b"))));
|
|
|
(void)(qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), qi_sub(state, qi_call(state, qi_get(state, "len"), __qistd155(state)), qi_make_number(state, 1)))));
|
|
|
goto __continue151;
|
|
|
}
|
|
|
+qi_old_scope(state);
|
|
|
(void)(qi_set(state, false, "r", qi_add(state, qi_get(state, "r"), qi_index(state, qi_get(state, "s"), qi_get(state, "i")))));
|
|
|
__continue151:;
|
|
|
qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), state->one));
|
|
|
}
|
|
|
__break151:;
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "r");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -982,9 +1118,12 @@ return list;
|
|
|
}
|
|
|
qi_value_t *__qistd156(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "t", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd157(state)), qi_make_string(state, "table")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: table, but got: "), qi_call(state, qi_get(state, "type"), __qistd158(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "r", qi_make_list(state, NULL));
|
|
|
+qi_new_scope(state);
|
|
|
qi_value_t *__qistd160 = qi_iter(state, qi_get(state, "t"));
|
|
|
qi_decl(state, "k", state->nil);
|
|
|
for (qi_size_t length = _qi_length(state, __qistd160), i = 0; i < length; i++) {
|
|
@@ -992,6 +1131,7 @@ qi_set(state, false, "k", qi_index(state, __qistd160, qi_make_number(state, i)))
|
|
|
(void)(qi_call(state, qi_get(state, "list_push"), __qistd161(state)));__continue159:;
|
|
|
}
|
|
|
__break159:;
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "r");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -1013,9 +1153,12 @@ return list;
|
|
|
}
|
|
|
qi_value_t *__qistd162(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "t", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd163(state)), qi_make_string(state, "table")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: table, but got: "), qi_call(state, qi_get(state, "type"), __qistd164(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "r", qi_make_list(state, NULL));
|
|
|
+qi_new_scope(state);
|
|
|
qi_value_t *__qistd166 = qi_iter(state, qi_get(state, "t"));
|
|
|
qi_decl(state, "k", state->nil);
|
|
|
for (qi_size_t length = _qi_length(state, __qistd166), i = 0; i < length; i++) {
|
|
@@ -1023,6 +1166,7 @@ qi_set(state, false, "k", qi_index(state, __qistd166, qi_make_number(state, i)))
|
|
|
(void)(qi_call(state, qi_get(state, "list_push"), __qistd167(state)));__continue165:;
|
|
|
}
|
|
|
__break165:;
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "r");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -1104,13 +1248,20 @@ return list;
|
|
|
qi_value_t *__qistd168(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "f", qi_list_index(pargs, 0));
|
|
|
qi_decl(state, "xs", qi_list_index(pargs, 1));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd169(state)), qi_make_string(state, "function")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: function, but got: "), qi_call(state, qi_get(state, "type"), __qistd170(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_in(state, qi_call(state, qi_get(state, "type"), __qistd171(state)), qi_make_tuple(state, __qistd172(state))))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: list, tuple, string or bytes, but got: "), qi_call(state, qi_get(state, "type"), __qistd173(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "len"), __qistd174(state)), qi_make_number(state, 0)))) {
|
|
|
qi_throw(state, qi_make_string(state, "cannot reduce empty list"));}
|
|
|
+qi_old_scope(state);
|
|
|
(void)(qi_set(state, false, "r", qi_index(state, qi_get(state, "xs"), qi_make_number(state, 0))));
|
|
|
+qi_new_scope(state);
|
|
|
qi_value_t *__qistd176 = qi_iter(state, qi_call(state, qi_get(state, "slice"), __qistd177(state)));
|
|
|
qi_decl(state, "x", state->nil);
|
|
|
for (qi_size_t length = _qi_length(state, __qistd176), i = 0; i < length; i++) {
|
|
@@ -1118,12 +1269,27 @@ qi_set(state, false, "x", qi_index(state, __qistd176, qi_make_number(state, i)))
|
|
|
(void)(qi_set(state, false, "r", qi_call(state, qi_get(state, "f"), __qistd178(state))));__continue175:;
|
|
|
}
|
|
|
__break175:;
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "type"), __qistd179(state)), qi_make_string(state, "tuple")))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "tuple"), __qistd180(state));} else {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "type"), __qistd181(state)), qi_make_string(state, "string")))) {
|
|
|
+qi_old_scope(state);
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "list_join"), __qistd182(state));} else {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "type"), __qistd183(state)), qi_make_string(state, "bytes")))) {
|
|
|
-return qi_call(state, qi_get(state, "bytes"), __qistd184(state));}}}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_old_scope(state);
|
|
|
+qi_old_scope(state);
|
|
|
+return qi_call(state, qi_get(state, "bytes"), __qistd184(state));}
|
|
|
+qi_old_scope(state);
|
|
|
+}
|
|
|
+qi_old_scope(state);
|
|
|
+}
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "r");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -1234,13 +1400,21 @@ return list;
|
|
|
qi_value_t *__qistd191(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "f", qi_list_index(pargs, 0));
|
|
|
qi_decl(state, "xs", qi_list_index(pargs, 1));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd192(state)), qi_make_string(state, "function")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: function, but got: "), qi_call(state, qi_get(state, "type"), __qistd193(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_in(state, qi_call(state, qi_get(state, "type"), __qistd194(state)), qi_make_tuple(state, __qistd195(state))))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: list, tuple, string or bytes, but got: "), qi_call(state, qi_get(state, "type"), __qistd196(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "len"), __qistd197(state)), qi_make_number(state, 0)))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "xs");}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "r", qi_make_list(state, NULL));
|
|
|
+qi_new_scope(state);
|
|
|
qi_value_t *__qistd199 = qi_iter(state, qi_get(state, "xs"));
|
|
|
qi_decl(state, "x", state->nil);
|
|
|
for (qi_size_t length = _qi_length(state, __qistd199), i = 0; i < length; i++) {
|
|
@@ -1248,12 +1422,27 @@ qi_set(state, false, "x", qi_index(state, __qistd199, qi_make_number(state, i)))
|
|
|
(void)(qi_call(state, qi_get(state, "list_push"), __qistd200(state)));__continue198:;
|
|
|
}
|
|
|
__break198:;
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "type"), __qistd202(state)), qi_make_string(state, "tuple")))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "tuple"), __qistd203(state));} else {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "type"), __qistd204(state)), qi_make_string(state, "string")))) {
|
|
|
+qi_old_scope(state);
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "list_join"), __qistd205(state));} else {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "type"), __qistd206(state)), qi_make_string(state, "bytes")))) {
|
|
|
-return qi_call(state, qi_get(state, "bytes"), __qistd207(state));}}}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_old_scope(state);
|
|
|
+qi_old_scope(state);
|
|
|
+return qi_call(state, qi_get(state, "bytes"), __qistd207(state));}
|
|
|
+qi_old_scope(state);
|
|
|
+}
|
|
|
+qi_old_scope(state);
|
|
|
+}
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "r");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -1334,27 +1523,53 @@ return list;
|
|
|
qi_value_t *__qistd208(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "f", qi_list_index(pargs, 0));
|
|
|
qi_decl(state, "xs", qi_list_index(pargs, 1));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd209(state)), qi_make_string(state, "function")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: function, but got: "), qi_call(state, qi_get(state, "type"), __qistd210(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_in(state, qi_call(state, qi_get(state, "type"), __qistd211(state)), qi_make_tuple(state, __qistd212(state))))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: list, tuple, string or bytes, but got: "), qi_call(state, qi_get(state, "type"), __qistd213(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "len"), __qistd214(state)), qi_make_number(state, 0)))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "xs");}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "r", qi_make_list(state, NULL));
|
|
|
+qi_new_scope(state);
|
|
|
qi_value_t *__qistd216 = qi_iter(state, qi_get(state, "xs"));
|
|
|
qi_decl(state, "x", state->nil);
|
|
|
for (qi_size_t length = _qi_length(state, __qistd216), i = 0; i < length; i++) {
|
|
|
qi_set(state, false, "x", qi_index(state, __qistd216, qi_make_number(state, i)));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_call(state, qi_get(state, "f"), __qistd217(state)))) {
|
|
|
-(void)(qi_call(state, qi_get(state, "list_push"), __qistd218(state)));}__continue215:;
|
|
|
+(void)(qi_call(state, qi_get(state, "list_push"), __qistd218(state)));}
|
|
|
+qi_old_scope(state);
|
|
|
+__continue215:;
|
|
|
}
|
|
|
__break215:;
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "type"), __qistd219(state)), qi_make_string(state, "tuple")))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "tuple"), __qistd220(state));} else {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "type"), __qistd221(state)), qi_make_string(state, "string")))) {
|
|
|
+qi_old_scope(state);
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "list_join"), __qistd222(state));} else {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "type"), __qistd223(state)), qi_make_string(state, "bytes")))) {
|
|
|
-return qi_call(state, qi_get(state, "bytes"), __qistd224(state));}}}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_old_scope(state);
|
|
|
+qi_old_scope(state);
|
|
|
+return qi_call(state, qi_get(state, "bytes"), __qistd224(state));}
|
|
|
+qi_old_scope(state);
|
|
|
+}
|
|
|
+qi_old_scope(state);
|
|
|
+}
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "r");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -1403,21 +1618,41 @@ return list;
|
|
|
qi_value_t *__qistd225(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "s", qi_list_index(pargs, 0));
|
|
|
qi_decl(state, "w", qi_list_index(pargs, 1));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_or(state, qi_equals(state, qi_get(state, "s"), state->empty_string), qi_equals(state, qi_get(state, "w"), state->empty_string)))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_negate(state, qi_make_number(state, 1));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd226(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd227(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd228(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd229(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
qi_decl(state, "i", qi_make_number(state, 0));
|
|
|
while (_qi_truthy(state, qi_lt(state, qi_get(state, "i"), qi_call(state, qi_get(state, "len"), __qistd231(state))))) {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_and(state, qi_equals(state, qi_call(state, qi_get(state, "len"), __qistd232(state)), qi_make_number(state, 1)), qi_equals(state, qi_index(state, qi_get(state, "s"), qi_get(state, "i")), qi_get(state, "w"))))) {
|
|
|
+qi_old_scope(state);
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "i");} else {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "slice"), __qistd233(state)), qi_get(state, "w")))) {
|
|
|
-return qi_get(state, "i");}}__continue230:;
|
|
|
+qi_old_scope(state);
|
|
|
+qi_old_scope(state);
|
|
|
+qi_old_scope(state);
|
|
|
+return qi_get(state, "i");}
|
|
|
+qi_old_scope(state);
|
|
|
+}
|
|
|
+qi_old_scope(state);
|
|
|
+__continue230:;
|
|
|
qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), state->one));
|
|
|
}
|
|
|
__break230:;
|
|
|
+qi_old_scope(state);
|
|
|
return qi_negate(state, qi_make_number(state, 1));
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -1455,18 +1690,27 @@ return list;
|
|
|
qi_value_t *__qistd235(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "s", qi_list_index(pargs, 0));
|
|
|
qi_decl(state, "cs", pargc >= 2? qi_list_index(pargs, 1): qi_make_string(state, " \t\n\r\x0b\x0c"));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd236(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd237(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd238(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd239(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_get(state, "s"), state->empty_string))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "s");}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
qi_decl(state, "i", qi_make_number(state, 0));
|
|
|
while (_qi_truthy(state, qi_and(state, qi_in(state, qi_index(state, qi_get(state, "s"), qi_get(state, "i")), qi_get(state, "cs")), qi_lt(state, qi_get(state, "i"), qi_call(state, qi_get(state, "len"), __qistd241(state)))))) {
|
|
|
__continue240:;
|
|
|
qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), state->one));
|
|
|
}
|
|
|
__break240:;
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "slice"), __qistd242(state));
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -1510,12 +1754,20 @@ return list;
|
|
|
qi_value_t *__qistd243(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "s", qi_list_index(pargs, 0));
|
|
|
qi_decl(state, "cs", pargc >= 2? qi_list_index(pargs, 1): qi_make_string(state, " \t\n\r\x0b\x0c"));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd244(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd245(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd246(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd247(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_get(state, "s"), state->empty_string))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "s");}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
qi_decl(state, "i", qi_sub(state, qi_call(state, qi_get(state, "len"), __qistd249(state)), qi_make_number(state, 1)));
|
|
|
qi_decl(state, "k", qi_make_number(state, 0));
|
|
|
while (_qi_truthy(state, qi_and(state, qi_in(state, qi_index(state, qi_get(state, "s"), qi_get(state, "i")), qi_get(state, "cs")), qi_ge(state, qi_get(state, "i"), qi_make_number(state, 0))))) {
|
|
@@ -1523,6 +1775,7 @@ while (_qi_truthy(state, qi_and(state, qi_in(state, qi_index(state, qi_get(state
|
|
|
qi_set(state, false, "k", qi_add(state, qi_get(state, "k"), state->one));
|
|
|
}
|
|
|
__break248:;
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "slice"), __qistd250(state));
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -1561,10 +1814,14 @@ return list;
|
|
|
qi_value_t *__qistd252(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "s", qi_list_index(pargs, 0));
|
|
|
qi_decl(state, "cs", pargc >= 2? qi_list_index(pargs, 1): qi_make_string(state, " \t\n\r\x0b\x0c"));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd253(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd254(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd255(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd256(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "str_lstrip"), __qistd257(state));
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -1592,12 +1849,19 @@ qi_value_t *__qistd259(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "d", pargc >= 3? qi_list_index(pargs, 2): qi_get(state, "nil"));
|
|
|
qi_decl(state, "k", qi_list_index(pargs, 1));
|
|
|
qi_decl(state, "t", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd260(state)), qi_make_string(state, "table")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: table, but got: "), qi_call(state, qi_get(state, "type"), __qistd261(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd262(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd263(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_in(state, qi_get(state, "k"), qi_get(state, "t")))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "d");}
|
|
|
+qi_old_scope(state);
|
|
|
return qi_index(state, qi_get(state, "t"), qi_get(state, "k"));
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -1626,14 +1890,19 @@ qi_list_data(list, 1) = qi_get(state, "t");
|
|
|
return list;
|
|
|
}
|
|
|
qi_value_t *__qistd264(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not(state, qi_get(state, "arguments")))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_make_list(state, NULL);}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "l", qi_call(state, qi_get(state, "map"), __qistd265(state)));
|
|
|
(void)(qi_set(state, false, "l", qi_call(state, qi_get(state, "reduce"), __qistd266(state))));
|
|
|
qi_decl(state, "r", qi_make_list(state, NULL));
|
|
|
+qi_new_scope(state);
|
|
|
qi_decl(state, "i", qi_make_number(state, 0));
|
|
|
while (_qi_truthy(state, qi_lt(state, qi_get(state, "i"), qi_get(state, "l")))) {
|
|
|
qi_decl(state, "t", qi_make_list(state, NULL));
|
|
|
+qi_new_scope(state);
|
|
|
qi_value_t *__qistd269 = qi_iter(state, qi_get(state, "arguments"));
|
|
|
qi_decl(state, "xs", state->nil);
|
|
|
for (qi_size_t length = _qi_length(state, __qistd269), i = 0; i < length; i++) {
|
|
@@ -1641,11 +1910,13 @@ qi_set(state, false, "xs", qi_index(state, __qistd269, qi_make_number(state, i))
|
|
|
(void)(qi_call(state, qi_get(state, "list_push"), __qistd270(state)));__continue268:;
|
|
|
}
|
|
|
__break268:;
|
|
|
+qi_old_scope(state);
|
|
|
(void)(qi_call(state, qi_get(state, "list_push"), __qistd271(state)));
|
|
|
__continue267:;
|
|
|
qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), state->one));
|
|
|
}
|
|
|
__break267:;
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "r");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -1688,9 +1959,14 @@ return list;
|
|
|
}
|
|
|
qi_value_t *__qistd272(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "l", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "type"), __qistd273(state)), qi_make_string(state, "table")))) {
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "zip"), __qistd274(state));} else {
|
|
|
-return qi_call(state, qi_get(state, "zip"), __qistd277(state));}return state->nil;
|
|
|
+qi_old_scope(state);
|
|
|
+return qi_call(state, qi_get(state, "zip"), __qistd277(state));}
|
|
|
+qi_old_scope(state);
|
|
|
+return state->nil;
|
|
|
}
|
|
|
inline static qi_list_t *__qistd281(qi_state_t *state) {
|
|
|
qi_list_t *list = qi_list_make_n(1);
|
|
@@ -1724,8 +2000,10 @@ return list;
|
|
|
}
|
|
|
qi_value_t *__qistd280(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "s", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd281(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd282(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "map"), __qistd283(state));
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -1761,8 +2039,10 @@ return list;
|
|
|
}
|
|
|
qi_value_t *__qistd287(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "s", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd288(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd289(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "map"), __qistd290(state));
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -1848,6 +2128,7 @@ qi_decl(state, "pargs", qi_list_index(pargs, 1));
|
|
|
qi_decl(state, "this", qi_list_index(pargs, 0));
|
|
|
qi_decl(state, "t", qi_make_table(state, NULL));
|
|
|
qi_decl(state, "mt", qi_make_table(state, NULL));
|
|
|
+qi_new_scope(state);
|
|
|
qi_value_t *__qistd309 = qi_iter(state, qi_get(state, "p"));
|
|
|
qi_decl(state, "other", state->nil);
|
|
|
for (qi_size_t length = _qi_length(state, __qistd309), i = 0; i < length; i++) {
|
|
@@ -1858,14 +2139,19 @@ qi_set(state, false, "other", qi_index(state, __qistd309, qi_make_number(state,
|
|
|
__continue308:;
|
|
|
}
|
|
|
__break308:;
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_equals(state, qi_call(state, qi_get(state, "len"), __qistd311(state)), qi_make_number(state, 1)))) {
|
|
|
(void)(qi_index_set(state, false, qi_get(state, "this"), qi_make_string(state, "super"), qi_index(state, qi_index(state, qi_get(state, "this"), qi_make_string(state, "super")), qi_make_number(state, 0))));}
|
|
|
+qi_old_scope(state);
|
|
|
(void)(qi_set(state, false, "t", qi_add(state, qi_get(state, "t"), qi_index(state, qi_get(state, "this"), qi_make_string(state, "t")))));
|
|
|
(void)(qi_set(state, false, "mt", qi_add(state, qi_get(state, "mt"), qi_index(state, qi_get(state, "this"), qi_make_string(state, "mt")))));
|
|
|
(void)(qi_index_set(state, false, qi_get(state, "t"), qi_make_string(state, "super"), qi_index(state, qi_get(state, "this"), qi_make_string(state, "super"))));
|
|
|
(void)(qi_set(state, false, "obj", qi_call(state, qi_get(state, "set_meta_table"), __qistd312(state))));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_in(state, qi_make_string(state, "constructor"), qi_get(state, "mt")))) {
|
|
|
(void)(qi_call(state, qi_get(state, "func_call"), __qistd313(state)));}
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "obj");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -1924,21 +2210,26 @@ return list;
|
|
|
}
|
|
|
qi_value_t *__qistd316(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "s", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd317(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd318(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "r", state->empty_string);
|
|
|
qi_decl(state, "n", qi_make_number(state, 1));
|
|
|
+qi_new_scope(state);
|
|
|
qi_decl(state, "i", qi_make_number(state, 0));
|
|
|
while (_qi_truthy(state, qi_lt(state, qi_get(state, "i"), qi_call(state, qi_get(state, "len"), __qistd320(state))))) {
|
|
|
qi_value_t *__qistd322 = qi_index(state, qi_get(state, "s"), qi_get(state, "i"));
|
|
|
if (_qi_equals(state, __qistd322, qi_make_string(state, "_"))) goto __qistd323;
|
|
|
goto __default321;
|
|
|
__qistd323:;
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_and(state, qi_lt(state, qi_add(state, qi_get(state, "i"), qi_make_number(state, 1)), qi_call(state, qi_get(state, "len"), __qistd324(state))), qi_equals(state, qi_index(state, qi_get(state, "s"), qi_add(state, qi_get(state, "i"), qi_make_number(state, 1))), qi_make_string(state, "_"))))) {
|
|
|
(void)(qi_set(state, false, "r", qi_add(state, qi_get(state, "r"), qi_make_string(state, "_"))));
|
|
|
(void)(qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), state->one)));
|
|
|
goto __continue319;
|
|
|
}
|
|
|
+qi_old_scope(state);
|
|
|
(void)(qi_set(state, false, "r", qi_add(state, qi_get(state, "r"), qi_call(state, qi_get(state, "repr"), __qistd325(state)))));
|
|
|
goto __break321;
|
|
|
__default321:;
|
|
@@ -1948,6 +2239,7 @@ __continue319:;
|
|
|
qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), state->one));
|
|
|
}
|
|
|
__break319:;
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "r");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -1985,10 +2277,14 @@ return list;
|
|
|
qi_value_t *__qistd326(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "l", qi_list_index(pargs, 1));
|
|
|
qi_decl(state, "s", qi_list_index(pargs, 0));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd327(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd328(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd329(state)), qi_make_string(state, "list")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected second argument to be: list, but got: "), qi_call(state, qi_get(state, "type"), __qistd330(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "func_call"), __qistd331(state));
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -2030,31 +2326,42 @@ return list;
|
|
|
qi_value_t *__qistd333(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "s", qi_list_index(pargs, 0));
|
|
|
qi_decl(state, "t", qi_list_index(pargs, 1));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not_equals(state, qi_call(state, qi_get(state, "type"), __qistd334(state)), qi_make_string(state, "string")))) {
|
|
|
qi_throw(state, qi_add(state, qi_make_string(state, "expected first argument to be: string, but got: "), qi_call(state, qi_get(state, "type"), __qistd335(state))));}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "r", state->empty_string);
|
|
|
qi_decl(state, "n", qi_make_number(state, 1));
|
|
|
+qi_new_scope(state);
|
|
|
qi_decl(state, "i", qi_make_number(state, 0));
|
|
|
while (_qi_truthy(state, qi_lt(state, qi_get(state, "i"), qi_call(state, qi_get(state, "len"), __qistd337(state))))) {
|
|
|
qi_value_t *__qistd339 = qi_index(state, qi_get(state, "s"), qi_get(state, "i"));
|
|
|
if (_qi_equals(state, __qistd339, qi_make_string(state, "{"))) goto __qistd340;
|
|
|
goto __default338;
|
|
|
__qistd340:;
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_and(state, qi_lt(state, qi_add(state, qi_get(state, "i"), qi_make_number(state, 1)), qi_call(state, qi_get(state, "len"), __qistd341(state))), qi_equals(state, qi_index(state, qi_get(state, "s"), qi_add(state, qi_get(state, "i"), qi_make_number(state, 1))), qi_make_string(state, "{"))))) {
|
|
|
(void)(qi_set(state, false, "r", qi_add(state, qi_get(state, "r"), qi_make_string(state, "{"))));
|
|
|
(void)(qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), state->one)));
|
|
|
goto __continue336;
|
|
|
}
|
|
|
+qi_old_scope(state);
|
|
|
qi_decl(state, "k", state->empty_string);
|
|
|
(void)(qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), state->one)));
|
|
|
+qi_new_scope(state);
|
|
|
while (_qi_truthy(state, qi_and(state, qi_lt(state, qi_get(state, "i"), qi_call(state, qi_get(state, "len"), __qistd343(state))), qi_not_equals(state, qi_index(state, qi_get(state, "s"), qi_get(state, "i")), qi_make_string(state, "}"))))) {
|
|
|
(void)(qi_set(state, false, "k", qi_add(state, qi_get(state, "k"), qi_index(state, qi_get(state, "s"), qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), state->one))))));__continue342:;
|
|
|
}
|
|
|
__break342:;
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_or(state, qi_ge(state, qi_get(state, "i"), qi_call(state, qi_get(state, "len"), __qistd344(state))), qi_not_equals(state, qi_index(state, qi_get(state, "s"), qi_get(state, "i")), qi_make_string(state, "}"))))) {
|
|
|
qi_throw(state, qi_make_string(state, "unmatched { in format specifier"));}
|
|
|
+qi_old_scope(state);
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not(state, qi_get(state, "k")))) {
|
|
|
qi_throw(state, qi_make_string(state, "empty format key"));}
|
|
|
+qi_old_scope(state);
|
|
|
(void)(qi_set(state, false, "r", qi_add(state, qi_get(state, "r"), qi_call(state, qi_get(state, "repr"), __qistd345(state)))));
|
|
|
goto __break338;
|
|
|
__default338:;
|
|
@@ -2064,6 +2371,7 @@ __continue336:;
|
|
|
qi_set(state, false, "i", qi_add(state, qi_get(state, "i"), state->one));
|
|
|
}
|
|
|
__break336:;
|
|
|
+qi_old_scope(state);
|
|
|
return qi_get(state, "r");
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -2117,8 +2425,10 @@ qi_list_data(list, 1) = qi_make_string(state, "\n\r");
|
|
|
return list;
|
|
|
}
|
|
|
qi_value_t *__qistd353(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_gt(state, qi_call(state, qi_get(state, "len"), __qistd354(state)), qi_make_number(state, 0)))) {
|
|
|
(void)(qi_call(state, qi_get(state, "func_call"), __qistd355(state)));}
|
|
|
+qi_old_scope(state);
|
|
|
return qi_call(state, qi_get(state, "str_rstrip"), __qistd356(state));
|
|
|
return state->nil;
|
|
|
}
|
|
@@ -2136,8 +2446,11 @@ return qi_call(state, qi_get(state, "fopen"), __qistd358(state));return state->n
|
|
|
qi_value_t *__qistd359(qi_state_t *state, qi_size_t pargc, qi_list_t *pargs) {
|
|
|
qi_decl(state, "cond", qi_list_index(pargs, 0));
|
|
|
qi_decl(state, "msg", pargc >= 2? qi_list_index(pargs, 1): qi_make_string(state, "assertion failed"));
|
|
|
+qi_new_scope(state);
|
|
|
if (_qi_truthy(state, qi_not(state, qi_get(state, "cond")))) {
|
|
|
-qi_throw(state, qi_get(state, "msg"));}return state->nil;
|
|
|
+qi_throw(state, qi_get(state, "msg"));}
|
|
|
+qi_old_scope(state);
|
|
|
+return state->nil;
|
|
|
}
|
|
|
inline static qi_list_t *__qistd360(qi_state_t *state) {
|
|
|
qi_list_t *list = qi_list_make_n(2);
|