statement.h
Go to the documentation of this file.00001 #ifndef __STATEMENT_H__
00002 #define __STATEMENT_H__
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00026 #include "defines.h"
00027
00028
00030 statement* statement_create(
00031 expression* exp,
00032 func_unit* funit,
00033 unsigned int ppline
00034 );
00035
00037 void statement_size_elements( statement* stmt, func_unit* funit );
00038
00040 void statement_db_write( statement* stmt, FILE* ofile, bool ids_issued );
00041
00043 void statement_db_write_tree( statement* stmt, FILE* ofile );
00044
00046 void statement_db_write_expr_tree( statement* stmt, FILE* ofile );
00047
00049 void statement_db_read( char** line, func_unit* curr_funit, int read_mode );
00050
00052 void statement_assign_expr_ids( statement* stmt, func_unit* funit );
00053
00055 bool statement_connect( statement* curr_stmt, statement* next_stmt, int conn_id );
00056
00058 int statement_get_last_line( statement* stmt );
00059
00061 void statement_find_rhs_sigs( statement* stmt, str_link** head, str_link** tail );
00062
00064 statement* statement_find_statement( statement* curr, int id );
00065
00067 bool statement_contains_expr_calling_stmt( statement* curr, statement* stmt );
00068
00070 void statement_dealloc_recursive(
00071 statement* stmt,
00072 bool rm_stmt_blks
00073 );
00074
00076 void statement_dealloc( statement* stmt );
00077
00078 #endif
00079