inline void deleteCols(InIter del, InIter del_end)
 {
   Int ncols_new = ncols - (del_end - del);
   std::set<Int> del_set(del, del_end);
   std::vector<Float> new_m(nrows * ncols_new);
   Int j1 = 0;
   for (Int j = 0; j < ncols; ++j) {
     if (del_set.find(j) == del_set.end()) {
       for (Int i = 0; i < nrows; ++i) 
         new_m[i*ncols_new + j1] = at(i,j);
       ++j1;
     }
   }
   std::swap(m, new_m);
   ncols = ncols_new;
 }
 inline void deleteRows(InIter del, InIter del_end)
 {
   Int nrows_new = nrows - (del_end - del);
   std::set<Int> del_set(del, del_end);
   std::vector<Float> new_m(nrows_new * ncols);
   Int i1 = 0;
   for (Int i = 0; i < nrows; ++i) {
     if (del_set.find(i) == del_set.end()) {
       for (Int j = 0; j < ncols; ++j) 
         new_m[i1*ncols + j] = at(i,j);
       ++i1;
     }
   }
   std::swap(m, new_m);
   nrows = nrows_new;
 }
Example #3
0
void finish_ident(void)
{
	obstack_free(&id_obst, NULL);
	del_set(id_set);
	id_set = NULL;
}
Example #4
0
void diff_set(s,t)
{register int i,v ;
  itr(t,i,v,del_set(s,v));
}
Example #5
0
void lc_arg_free_env(lc_arg_env_t *env)
{
	del_set(env->args);
	free(env);
}