parameters: (target_dict, config_name, gyp_vars)
return_statement: return pdb_path
docstring: Returns the path to the PDB file that will be generated by a given
    configuration.
  
    The lookup proceeds as follows:
      - Look for an explicit path in the VCLinkerTool configuration block.
      - Look for an 'msvs_large_pdb_path' variable.
      - Use '<(PRODUCT_DIR)/<(product_name).(exe|dll).pdb' if 'product_name' is
        specified.
      - Use '<(PRODUCT_DIR)/<(target_name).(exe|dll).pdb'.
  
    Arguments:
      target_dict: The target dictionary to be searched.
      config_name: The name of the configuration of interest.
      gyp_vars: A dictionary of common GYP variables with generator-specific values.
    Returns:
      The path of the corresponding PDB file.
docstring_summary: Returns the path to the PDB file that will be generated by a given
    configuration.
docstring_tokens: Returns the path to the PDB file that will be generated by a given configuration .
function: def _GetPdbPath(target_dict, config_name, gyp_vars):
    """Returns the path to the PDB file that will be generated by a given
    configuration.
  
    The lookup proceeds as follows:
      - Look for an explicit path in the VCLinkerTool configuration block.
      - Look for an 'msvs_large_pdb_path' variable.
      - Use '<(PRODUCT_DIR)/<(product_name).(exe|dll).pdb' if 'product_name' is
        specified.
      - Use '<(PRODUCT_DIR)/<(target_name).(exe|dll).pdb'.
  
    Arguments:
      target_dict: The target dictionary to be searched.
      config_name: The name of the configuration of interest.
      gyp_vars: A dictionary of common GYP variables with generator-specific values.
    Returns:
      The path of the corresponding PDB file.
    """
    config = target_dict['configurations'][config_name]
    msvs = config.setdefault('msvs_settings', {})
  
    linker = msvs.get('VCLinkerTool', {})
  
    pdb_path = linker.get('ProgramDatabaseFile')
    if pdb_path:
      return pdb_path
  
    variables = target_dict.get('variables', {})
    pdb_path = variables.get('msvs_large_pdb_path', None)
    if pdb_path:
      return pdb_path
  
  
    pdb_base = target_dict.get('product_name', target_dict['target_name'])
    pdb_base = '%s.%s.pdb' % (pdb_base, TARGET_TYPE_EXT[target_dict['type']])
    pdb_path = gyp_vars['PRODUCT_DIR'] + '/' + pdb_base
  
    return pdb_path
function_tokens: def _GetPdbPath ( target_dict , config_name , gyp_vars ) : config = target_dict [ 'configurations' ] [ config_name ] msvs = config . setdefault ( 'msvs_settings' , { } ) linker = msvs . get ( 'VCLinkerTool' , { } ) pdb_path = linker . get ( 'ProgramDatabaseFile' ) if pdb_path : return pdb_path variables = target_dict . get ( 'variables' , { } ) pdb_path = variables . get ( 'msvs_large_pdb_path' , None ) if pdb_path : return pdb_path pdb_base = target_dict . get ( 'product_name' , target_dict [ 'target_name' ] ) pdb_base = '%s.%s.pdb' % ( pdb_base , TARGET_TYPE_EXT [ target_dict [ 'type' ] ] ) pdb_path = gyp_vars [ 'PRODUCT_DIR' ] + '/' + pdb_base return pdb_path