GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  SETHTITEM (3)

[Include document man1/alc_contents.mac]

   sethtitem    sethtitem

NAME

sethtitem - test and set an item in an hash table.

[Include document man1/alc_origin.1]

CONTENTS

Synopsys
Parameters
Description
Return Value
Example
Errors
Diagnostics
See Also

SYNOPSYS

#include "mut.h"
int sethtitem(table, key)
ht *table;
void *key;

PARAMETERS

table Hash table pointer
key Key used by the hash coding function to set an item

DESCRIPTION

sethtitem() adds an item in the hash table pointed to by table, whether it existed or not, and returns an appropriate value. This is kind of a test and set operator.

RETURN VALUE

If the key exists, the funtion return 1, if it doesn’t, the item is stored and the function returns 0.

EXAMPLE

#include <stdio.h>
#include "mut.h"
checksigname(p)
lofig_list *p;
{
int i;
losig_list *ptsig;
locon_list *ptcon;
ht *h;
char *amatla;
   for (i = 0, ptsig = p->LOSIG; ptsig; i++, ptsig = ptsig->NEXT);
   h = addht(i << 1); /* half empty hash tables are faster! */
   for (ptcon = p->LOCON; ptcon; ptcon = ptcon->NEXT)
      addhtitem(h, ptcon->NAME, 0);
   for (ptsig = p->LOSIG; ptsig; ptsig = ptsig->NEXT) {
      if (ptsig->TYPE == INTERNAL) {
         amatla = getsigname(ptsig);
         if (!sethtitem(h, amatla, 0))
            printf("node %s is now unique\n", amatla);
      }
   }
   delht(h);
}

ERRORS

"*** mbk error *** sethtitem impossible : value is EMPTYHT or DELETEHT"
The values EMPTYHT, -1, and DELETEHT, -2, are reserved for internal use, sorry.

DIAGNOSTICS

The value must be distinct from -1 and -2.

SEE ALSO

mbk(1), addht(3), delht(3), addhtitem(3), gethtitem(3), delhtitem(3), viewht(3).

[Include document man1/alc_bug_report.1]

Search for    or go to Top of page |  Section 3 |  Main Index


ASIM/LIP6 SETHTITEM (3) October 1, 1997

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.