Lines Matching refs:x2a

5450 static struct s_x2 *x2a;  variable
5454 if( x2a ) return; in Symbol_init()
5455 x2a = (struct s_x2*)malloc( sizeof(struct s_x2) ); in Symbol_init()
5456 if( x2a ){ in Symbol_init()
5457 x2a->size = 128; in Symbol_init()
5458 x2a->count = 0; in Symbol_init()
5459 x2a->tbl = (x2node*)calloc(128, sizeof(x2node) + sizeof(x2node*)); in Symbol_init()
5460 if( x2a->tbl==0 ){ in Symbol_init()
5461 free(x2a); in Symbol_init()
5462 x2a = 0; in Symbol_init()
5465 x2a->ht = (x2node**)&(x2a->tbl[128]); in Symbol_init()
5466 for(i=0; i<128; i++) x2a->ht[i] = 0; in Symbol_init()
5478 if( x2a==0 ) return 0; in Symbol_insert()
5480 h = ph & (x2a->size-1); in Symbol_insert()
5481 np = x2a->ht[h]; in Symbol_insert()
5490 if( x2a->count>=x2a->size ){ in Symbol_insert()
5494 array.size = arrSize = x2a->size*2; in Symbol_insert()
5495 array.count = x2a->count; in Symbol_insert()
5500 for(i=0; i<x2a->count; i++){ in Symbol_insert()
5502 oldnp = &(x2a->tbl[i]); in Symbol_insert()
5515 *x2a = array; in Symbol_insert()
5518 h = ph & (x2a->size-1); in Symbol_insert()
5519 np = &(x2a->tbl[x2a->count++]); in Symbol_insert()
5522 if( x2a->ht[h] ) x2a->ht[h]->from = &(np->next); in Symbol_insert()
5523 np->next = x2a->ht[h]; in Symbol_insert()
5524 x2a->ht[h] = np; in Symbol_insert()
5525 np->from = &(x2a->ht[h]); in Symbol_insert()
5536 if( x2a==0 ) return 0; in Symbol_find()
5537 h = strhash(key) & (x2a->size-1); in Symbol_find()
5538 np = x2a->ht[h]; in Symbol_find()
5550 if( x2a && n>0 && n<=x2a->count ){ in Symbol_Nth()
5551 data = x2a->tbl[n-1].data; in Symbol_Nth()
5561 return x2a ? x2a->count : 0; in Symbol_count()
5571 if( x2a==0 ) return 0; in Symbol_arrayof()
5572 arrSize = x2a->count; in Symbol_arrayof()
5575 for(i=0; i<arrSize; i++) array[i] = x2a->tbl[i].data; in Symbol_arrayof()