From 4115cde1a2045658f66cf1ba09e42556ec3cb7a5 Mon Sep 17 00:00:00 2001 From: biouman Date: Wed, 2 May 2001 01:14:42 +0000 Subject: *** empty log message *** --- lib/pile.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'lib/pile.c') diff --git a/lib/pile.c b/lib/pile.c index 5073127..8242b71 100644 --- a/lib/pile.c +++ b/lib/pile.c @@ -18,6 +18,8 @@ pile_elem result_pile[PILE_MAX]; unsigned int pile_ptr = 0; unsigned int result_pile_ptr = 0; +/* fonctions basiques sur la pile d operandes */ + void push_pile(char *st) { int valid1, valid2, valid3; @@ -140,6 +142,11 @@ void flush_pile(void) pile_ptr=0; } + + +/* fonctions basiques sur la pile de resultats */ + + void move_to_resultat_pile(void) { pile_elem temp; @@ -174,10 +181,26 @@ char * pop_resultat(void) return result; } + +polynome return_last(int *valid) +{ + if (!result_pile_ptr) { + *valid=0; + return NULL; + } else { + *valid=1; + return result_pile[result_pile_ptr--].poly; + } + +} + + int has_resultat(void) { return (result_pile_ptr ? 1 : 0); } +/* fonctions avancees sur la pile d operandes */ + char *affichage_level_1(void) { char *result = NULL; -- cgit v1.2.3