示例#1
0
static cost_val DistinctIfCost( sel_handle s_node )
/*************************************************/
{
    select_list *curr;
    select_list *next;
    int         entries;

    entries = 1;
    for( curr = s_node->list, next = curr->next; next != NULL; next = next->next ) {
        if( ( curr->high + 1 != next->low ) || ( curr->label != next->label ) ) {
            ++entries;
            curr = next;
        }
    }
    return( IfCost( s_node, entries ) );
}
示例#2
0
static  signed_32       DistinctIfCost( select_node *s_node ) {
/*************************************************************/

    select_list *list;
    select_list *next;
    int         entries;

    entries = 1;
    list = s_node->list;
    next = list->next;
    while( next != NULL ) {
        if( ( list->high + 1 != next->low ) || ( list->label != next->label ) ) {
            ++entries;
            list = next;
        }
        next = next->next;
    }
    return( IfCost( s_node, entries ) );
}