def _ValidateSettings(validators, settings, stderr):
 for tool_name in settings:
  if (tool_name in validators):
   tool_validators = validators[tool_name]
   for (setting, value) in settings[tool_name].iteritems():
    if (setting in tool_validators):
     try:
      tool_validators[setting](value)
     except ValueError as e:
      print >>stderr, ('Warning: for %s/%s, %s' % (tool_name, setting, e))
    else:
     _ValidateExclusionSetting(setting, tool_validators, ('Warning: unrecognized setting %s/%s' % (tool_name, setting)), stderr)
  else:
   print >>stderr, ('Warning: unrecognized tool %s' % tool_name)

def _ValidateSettings ( validators , settings , stderr ) : for tool_name in settings : if ( tool_name in validators ) : tool_validators = validators [ tool_name ] for ( setting , value ) in settings [ tool_name ] . iteritems ( ) : if ( setting in tool_validators ) : try : tool_validators [ setting ] ( value ) except ValueError as e : print >> stderr , ( 'Warning: for %s/%s, %s' % ( tool_name , setting , e ) ) else : _ValidateExclusionSetting ( setting , tool_validators , ( 'Warning: unrecognized setting %s/%s' % ( tool_name , setting ) ) , stderr ) else : print >> stderr , ( 'Warning: unrecognized tool %s' % tool_name )
validates that the settings are valid for msbuild or msvs .