summaryrefslogtreecommitdiff
path: root/src/core/function.c
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2008-11-04 23:24:42 +0000
committerPaul Buetow <paul@buetow.org>2008-11-04 23:24:42 +0000
commitd2713783c48ca9fbdd6f4ea3aab03fe856fdd52a (patch)
tree3d78a409ab9949319285d26403dd6b9d8bf2067f /src/core/function.c
parentf0b2170a9c769425082604c9e9252ba422902f3e (diff)
big step forward for arrays in fype.
Diffstat (limited to 'src/core/function.c')
-rw-r--r--src/core/function.c94
1 files changed, 65 insertions, 29 deletions
diff --git a/src/core/function.c b/src/core/function.c
index fbdf53d..8d5dbf6 100644
--- a/src/core/function.c
+++ b/src/core/function.c
@@ -186,14 +186,10 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op,
atoi(token_get_val(p_token_store)));
token_set_tt(p_token_store, TT_INTEGER);
break;
- /*
- case TT_ARRAY:
- token_set_ival(p_token_store,
- atoi(token_get_val(p_token_next)) +
- atoi(token_get_val(p_token_store)));
- token_set_tt(p_token_store, TT_INTEGER);
- break;
- */
+ case TT_ARRAY:
+ array_append(p_token_store->p_array,
+ p_token_next->p_array);
+ break;
NO_DEFAULT;
}
break;
@@ -215,6 +211,9 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op,
atoi(token_get_val(p_token_store)));
token_set_tt(p_token_store, TT_INTEGER);
break;
+ case TT_ARRAY:
+ ERROR("TT_ARRAY - TT_ARRAY not yet implemented");
+ break;
NO_DEFAULT;
}
break;
@@ -236,6 +235,9 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op,
atoi(token_get_val(p_token_store)));
token_set_tt(p_token_store, TT_INTEGER);
break;
+ case TT_ARRAY:
+ ERROR("TT_ARRAY * TT_ARRAY not yet implemented");
+ break;
NO_DEFAULT;
}
break;
@@ -257,6 +259,9 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op,
atof(token_get_val(p_token_store)));
token_set_tt(p_token_store, TT_DOUBLE);
break;
+ case TT_ARRAY:
+ ERROR("TT_ARRAY / TT_ARRAY not yet implemented");
+ break;
NO_DEFAULT;
}
break;
@@ -278,6 +283,8 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op,
strcmp(token_get_val(p_token_next),
token_get_val(p_token_store)) == 0);
token_set_tt(p_token_store, TT_INTEGER);
+ case TT_ARRAY:
+ ERROR("TT_ARRAY eq TT_ARRAY not yet implemented");
break;
NO_DEFAULT;
}
@@ -301,6 +308,9 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op,
token_get_val(p_token_store)) != 0);
token_set_tt(p_token_store, TT_INTEGER);
break;
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
NO_DEFAULT;
}
break;
@@ -323,6 +333,9 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op,
token_get_val(p_token_store)) <= 0);
token_set_tt(p_token_store, TT_INTEGER);
break;
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
NO_DEFAULT;
}
break;
@@ -345,6 +358,9 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op,
token_get_val(p_token_store)) >= 0);
token_set_tt(p_token_store, TT_INTEGER);
break;
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
NO_DEFAULT;
}
break;
@@ -367,6 +383,9 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op,
token_get_val(p_token_store)) < 0);
token_set_tt(p_token_store, TT_INTEGER);
break;
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
NO_DEFAULT;
}
break;
@@ -389,27 +408,8 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op,
token_get_val(p_token_store)) > 0);
token_set_tt(p_token_store, TT_INTEGER);
break;
- NO_DEFAULT;
- }
- break;
- case TT_AND:
- switch (tt_highest) {
- case TT_INTEGER:
- token_set_ival(p_token_store,
- (int) token_get_ival(p_token_next) &
- token_get_ival(p_token_store));
- break;
- case TT_DOUBLE:
- token_set_ival(p_token_store,
- (int) token_get_dval(p_token_next) &
- (int) token_get_dval(p_token_store));
- token_set_tt(p_token_store, TT_INTEGER);
- break;
- case TT_STRING:
- token_set_ival(p_token_store,
- atoi(token_get_val(p_token_next)) &
- atoi(token_get_val(p_token_store)));
- token_set_tt(p_token_store, TT_INTEGER);
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
break;
NO_DEFAULT;
}
@@ -433,6 +433,9 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op,
atoi(token_get_val(p_token_store)));
token_set_tt(p_token_store, TT_INTEGER);
break;
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
NO_DEFAULT;
}
break;
@@ -455,6 +458,9 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op,
atoi(token_get_val(p_token_store)));
token_set_tt(p_token_store, TT_INTEGER);
break;
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
NO_DEFAULT;
}
break;
@@ -477,6 +483,9 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op,
atoi(token_get_val(p_token_store)));
token_set_tt(p_token_store, TT_INTEGER);
break;
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
NO_DEFAULT;
}
break;
@@ -499,6 +508,9 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op,
atoi(token_get_val(p_token_store)));
token_set_tt(p_token_store, TT_INTEGER);
break;
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
NO_DEFAULT;
}
break;
@@ -617,6 +629,9 @@ function_process_buildin(Interpret *p_interpret, Token *p_token_ident,
if (atoi(token_get_val(p_token)) == 0)
_FUNCTION_ERROR("Assert failed", p_token);
break;
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
NO_DEFAULT;
}
@@ -636,6 +651,9 @@ function_process_buildin(Interpret *p_interpret, Token *p_token_ident,
convert_to_integer(p_token);
token_set_ival(p_token, token_get_ival(p_token) - 1);
break;
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
NO_DEFAULT;
}
@@ -684,6 +702,9 @@ function_process_buildin(Interpret *p_interpret, Token *p_token_ident,
convert_to_integer(p_token);
token_set_ival(p_token, token_get_ival(p_token) + 1);
break;
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
NO_DEFAULT;
}
@@ -716,6 +737,9 @@ function_process_buildin(Interpret *p_interpret, Token *p_token_ident,
token_set_ival(p_token, -atoi(token_get_val(p_token)));
token_set_tt(p_token, TT_INTEGER);
break;
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
NO_DEFAULT;
}
@@ -739,6 +763,9 @@ function_process_buildin(Interpret *p_interpret, Token *p_token_ident,
token_set_ival(p_token, !atoi(token_get_val(p_token)));
token_set_tt(p_token, TT_INTEGER);
break;
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
NO_DEFAULT;
}
}
@@ -759,6 +786,9 @@ function_process_buildin(Interpret *p_interpret, Token *p_token_ident,
case TT_STRING:
printf("%s", token_get_val(p_token));
break;
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
NO_DEFAULT;
}
}
@@ -780,6 +810,9 @@ function_process_buildin(Interpret *p_interpret, Token *p_token_ident,
break;
case TT_STRING:
printf("%s", token_get_val(p_token));
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
break;
}
}
@@ -827,6 +860,9 @@ function_process_buildin(Interpret *p_interpret, Token *p_token_ident,
token_set_ival(p_token, !atoi(token_get_val(p_token)));
token_set_tt(p_token, TT_INTEGER);
break;
+ case TT_ARRAY:
+ ERROR("ARRAY bla yet implemented");
+ break;
NO_DEFAULT;
}