assertion.h

Go to the documentation of this file.
00001 #ifndef __ASSERTION_H__
00002 #define __ASSERTION_H__
00003 
00004 /*
00005  Copyright (c) 2006-2010 Trevor Williams
00006 
00007  This program is free software; you can redistribute it and/or modify
00008  it under the terms of the GNU General Public License as published by the Free Software
00009  Foundation; either version 2 of the License, or (at your option) any later version.
00010 
00011  This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
00012  without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00013  See the GNU General Public License for more details.
00014 
00015  You should have received a copy of the GNU General Public License along with this program;
00016  if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00017 */
00018 
00027 #include <stdio.h>
00028 
00029 #include "defines.h"
00030 
00031 
00033 void assertion_parse( const char* arg );
00034 
00036 void assertion_parse_attr(
00037   attr_param*      ap,
00038   int              line,
00039   const func_unit* funit,
00040   bool             exclude
00041 );
00042 
00044 void assertion_get_stats(
00045             const func_unit* funit,
00046   /*@out@*/ unsigned int*    hit,
00047   /*@out@*/ unsigned int*    excluded,
00048   /*@out@*/ unsigned int*    total
00049 );
00050 
00052 void assertion_report( FILE* ofile, bool verbose );
00053 
00055 void assertion_get_funit_summary(
00056             func_unit*    funit,
00057   /*@out@*/ unsigned int* hit,
00058   /*@out@*/ unsigned int* excluded,
00059   /*@out@*/ unsigned int* total
00060 );
00061 
00063 void assertion_collect(
00064             func_unit*    funit,
00065             int           cov,
00066   /*@out@*/ char***       inst_names,
00067   /*@out@*/ int**         excludes,
00068   /*@out@*/ unsigned int* inst_size
00069 );
00070 
00072 void assertion_get_coverage(
00073             const func_unit* funit,
00074             const char*      inst_name,
00075   /*@out@*/ char**           assert_mod,
00076   /*@out@*/ str_link**       cp_head,
00077   /*@out@*/ str_link**       cp_tail
00078 );
00079 
00080 #endif
00081 
Generated on Sun Nov 21 00:55:34 2010 for Covered by  doxygen 1.6.3