@ -200,6 +200,11 @@ module Implementation = struct
 
			
		
	
		
			
				
					          Sqlite3 . bind  delete_stmt  1  proc_name 
 
			
		
	
		
			
				
					          | >  SqliteUtils . check_result_code  db  ~ log : " delete spec bind proc_name "  ; 
 
			
		
	
		
			
				
					          SqliteUtils . result_unit  ~ finalize : false  ~ log : " store spec "  db  delete_stmt  ) 
 
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					  let  delete_all_specs  ()  = 
 
			
		
	
		
			
				
					    let  db  =  ResultsDatabase . get_database  ()  in 
 
			
		
	
		
			
				
					    SqliteUtils . exec  db  ~ log : " drop procedures table "  ~ stmt : " DELETE FROM specs " 
 
			
		
	
		
			
				
					end  
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					module  Command  =  struct  
			
		
	
	
		
			
				
					
						
						
						
							
								 
						
					 
				
				@ -209,6 +214,7 @@ module Command = struct
 
			
		
	
		
			
				
					        ;  tenv :  Sqlite3 . Data . t 
 
			
		
	
		
			
				
					        ;  integer_type_widths :  Sqlite3 . Data . t 
 
			
		
	
		
			
				
					        ;  proc_names :  Sqlite3 . Data . t  } 
 
			
		
	
		
			
				
					    |  DeleteAllSpecs 
 
			
		
	
		
			
				
					    |  DeleteSpec  of  { proc_name :  Sqlite3 . Data . t } 
 
			
		
	
		
			
				
					    |  Handshake 
 
			
		
	
		
			
				
					    |  MarkAllSourceFilesStale 
 
			
		
	
	
		
			
				
					
						
						
						
							
								 
						
					 
				
				@ -230,6 +236,8 @@ module Command = struct
 
			
		
	
		
			
				
					  let  to_string  =  function 
 
			
		
	
		
			
				
					    |  AddSourceFile  _  -> 
 
			
		
	
		
			
				
					        " AddSourceFile " 
 
			
		
	
		
			
				
					    |  DeleteAllSpecs  -> 
 
			
		
	
		
			
				
					        " DeleteAllSpecs " 
 
			
		
	
		
			
				
					    |  DeleteSpec  _  -> 
 
			
		
	
		
			
				
					        " DeleteSpec " 
 
			
		
	
		
			
				
					    |  Handshake  -> 
 
			
		
	
	
		
			
				
					
						
						
						
							
								 
						
					 
				
				@ -255,6 +263,8 @@ module Command = struct
 
			
		
	
		
			
				
					  let  execute  =  function 
 
			
		
	
		
			
				
					    |  AddSourceFile  { source_file ;  tenv ;  integer_type_widths ;  proc_names }  -> 
 
			
		
	
		
			
				
					        Implementation . add_source_file  ~ source_file  ~ tenv  ~ integer_type_widths  ~ proc_names 
 
			
		
	
		
			
				
					    |  DeleteAllSpecs  -> 
 
			
		
	
		
			
				
					        Implementation . delete_all_specs  () 
 
			
		
	
		
			
				
					    |  DeleteSpec  { proc_name }  -> 
 
			
		
	
		
			
				
					        Implementation . delete_spec  ~ proc_name 
 
			
		
	
		
			
				
					    |  Handshake  -> 
 
			
		
	
	
		
			
				
					
						
							
								 
						
						
							
								 
						
						
					 
				
				@ -392,3 +402,5 @@ let store_spec ~proc_name ~analysis_summary ~report_summary =
 
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					let  delete_spec  ~ proc_name  =  perform  ( DeleteSpec  { proc_name } )  
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					let  delete_all_specs  ()  =  perform  DeleteAllSpecs