def Overlay(child, parent):
 for arg in (child, parent):
  if (not isinstance(arg, collections.Mapping)):
   raise DefinitionError(('Trying to merge badly defined hints. Child: %s, Parent: %s' % (type(child), type(parent))))
 for attr in ['fix', 'format', 'problem', 'summary']:
  if (not child.get(attr)):
   child[attr] = parent.get(attr, '').strip()
 return child

def Overlay ( child , parent ) : for arg in ( child , parent ) : if ( not isinstance ( arg , collections . Mapping ) ) : raise DefinitionError ( ( 'Trying to merge badly defined hints. Child: %s, Parent: %s' % ( type ( child ) , type ( parent ) ) ) ) for attr in [ 'fix' , 'format' , 'problem' , 'summary' ] : if ( not child . get ( attr ) ) : child [ attr ] = parent . get ( attr , '' ) . strip ( ) return child
adds hint attributes to a child hint if they are not defined .