Lines Matching refs:type
27 ** type: search type.
33 static Void_t* dttree(Dt_t* dt, Void_t* obj, int type)
35 static Void_t* dttree(dt,obj,type)
38 int type;
51 dt->type &= ~DT_FOUND;
55 { if(!root || !(type&(DT_CLEAR|DT_FIRST|DT_LAST)) )
58 if(type&DT_CLEAR) /* delete all objects */
76 { if(type&DT_LAST)
80 else /* type&DT_FIRST */
94 if(dt->meth->type == DT_OBAG && (type&(DT_DELETE|DT_DETACH)) )
109 if(type&(DT_MATCH|DT_SEARCH|DT_INSERT|DT_ATTACH))
110 { key = (type&DT_MATCH) ? obj : _DTKEY(obj,ky,sz);
114 else if(type&DT_RENEW)
124 if(dt->meth->type == DT_OSET &&
125 (minp = dt->data->minp) != 0 && (type&(DT_MATCH|DT_SEARCH)) )
232 dt->type |= DT_FOUND;
236 if(type&(DT_SEARCH|DT_MATCH))
240 if((dt->meth->type&DT_OBAG) && (type&(DT_SEARCH|DT_MATCH)) )
258 else if(type&DT_NEXT)
271 else if(type&DT_PREV)
284 else if(type&(DT_DELETE|DT_DETACH))
288 if(disc->freef && (type&DT_DELETE))
296 else if(type&(DT_INSERT|DT_ATTACH))
297 { if(dt->meth->type&DT_OSET)
306 else if(type&DT_RENEW) /* a duplicate */
307 { if(dt->meth->type&DT_OSET)
327 if(type&DT_NEXT)
329 else if(type&DT_PREV)
331 else if(type&(DT_SEARCH|DT_MATCH))
337 return (type&DT_DELETE) ? obj : NIL(Void_t*);
339 else if(type&(DT_INSERT|DT_ATTACH))
341 if(disc->makef && (type&DT_INSERT))
352 (type&DT_INSERT))
363 else if(type&DT_RENEW)
368 else /*if(type&DT_DELETE)*/