def iteritems(self):
     ah=None
     while True:
         try:
             ah=gv.agnxtattr(self.handle,self.type,ah)
             yield gv.agattrname(ah),gv.agattrdefval(ah)
         except KeyError: # gv.agattrdefval returned KeyError, skip
             continue
 def iteritems(self):
     ah=None
     while 1:
         try:
             ah=gv.agnxtattr(self.ghandle,self.type,ah) 
             value=gv.agxget(self.handle,ah)
             try: 
                 defval=gv.agattrdefval(ah) # default value
                 if defval==value: 
                     continue # don't report default
             except: # no default, gv.getattrdefval raised error
                 pass
             yield gv.agattrname(ah),value # unique value for this edge
         except KeyError: # gv.agxget returned KeyError, skip
             continue