parameters: (filename, language)
return_statement: return []
docstring: Scans a file for executable lines.
  
    Args:
      filename: Path to file to scan.
      language: Language for file ('C', 'C++', 'python', 'ObjC', 'ObjC++')
  
    Returns:
      A list of executable lines, or an empty list if the file was not a handled
          language.
docstring_summary: Scans a file for executable lines.
docstring_tokens: Scans a file for executable lines .
function: def ScanFile(filename, language):
    """Scans a file for executable lines.
  
    Args:
      filename: Path to file to scan.
      language: Language for file ('C', 'C++', 'python', 'ObjC', 'ObjC++')
  
    Returns:
      A list of executable lines, or an empty list if the file was not a handled
          language.
    """
  
    if language == 'python':
      return PythonScanner().Scan(filename)
    elif language in ['C', 'C++', 'ObjC', 'ObjC++']:
      return CppScanner().Scan(filename)
  
    # Something we don't handle
    return []
function_tokens: def ScanFile ( filename , language ) : if language == 'python' : return PythonScanner ( ) . Scan ( filename ) elif language in [ 'C' , 'C++' , 'ObjC' , 'ObjC++' ] : return CppScanner ( ) . Scan ( filename ) # Something we don't handle return [ ]