예제 #1
0
파일: write.cpp 프로젝트: bokehsensei/cores
void Write::reduce_chunk_action(const event_base* evt)
{
	//printf("in reduce_chunk_action of Write\n"); fflush(stdout);
	chunk output_chunk;
	if( m_output_stream.good() )
	{
		new_chunk_event* wc = (new_chunk_event*)(evt);
		m_reducer(wc->data, m_output_stream);
		m_output_stream.flush();
		//printf("just reduced new chunk in Write\n"); fflush(stdout);
	}
	delete evt;
}
예제 #2
0
void var_subst::operator()(expr * n, unsigned num_args, expr * const * args, expr_ref & result) {
    SASSERT(is_well_sorted(result.m(), n));
    m_reducer.reset();
    if (m_std_order)
        m_reducer.set_inv_bindings(num_args, args);
    else
        m_reducer.set_bindings(num_args, args);
    m_reducer(n, result);
    SASSERT(is_well_sorted(m_reducer.m(), result));
    TRACE("var_subst_bug",
          tout << "m_std_order: " << m_std_order << "\n" << mk_ismt2_pp(n, m_reducer.m()) << "\nusing\n";
          for (unsigned i = 0; i < num_args; i++) tout << mk_ismt2_pp(args[i], m_reducer.m()) << "\n";
          tout << "\n------>\n";
          tout << mk_ismt2_pp(result, m_reducer.m()) << "\n";);