void convertdouble(TREE_NODE T,TREE_NODE lastnodelist){

  TREE_NODE tmp;

  if(T == NULL)
    return;

  tmp = T;
  if(tmp->left != NULL)
    convertdouble(tmp->left, lastnodelist);
  
  tmp->left = lastnodelist;
  if(lastnodelist != NULL)
    lastnodelist->right = tmp;

  lastnodelist = tmp;
 
  if(tmp->right != NULL)
    convertdouble(tmp->right, lastnodelist);
}
TREE_NODE covert_solution(BTREE T){
  
  TREE_NODE headlist;
  TREE_NODE lastnodelist = NULL;

  convertdouble(T, lastnodelist);
  headlist = lastnodelist;
  
  while(headlist && headlist->left)
    headlist = headlist->left;

  return headlist;
}
Example #3
0
    bool
    from_xdr_double_t::from_xdr (const amysql_scalar_t &x)
    {
      bool ret = true;
      switch (x.typ) {
      case AMYSQL_TYPE_INT:
	*_d = *x.amysql_int;
	break;
      case AMYSQL_TYPE_UINT64:
	*_d = *x.amysql_uint64;
	break;
      case AMYSQL_TYPE_BOOL:
	*_d = *x.amysql_bool;
	break;
      case AMYSQL_TYPE_DOUBLE:
	ret = convertdouble (*x.amysql_double, _d);
	break;
      default:
	ret = false;
      }
      return ret;
    }
Example #4
0
pub3::expr_double_t::expr_double_t (const xpub3_double_t &x)
  : _val (convertdouble (x.val)) {}