

def _ReportMissingProvides(self, missing_provides, token, need_blank_line):
    "Reports missing provide statements to the error handler.\n\n    Args:\n      missing_provides: A dictionary of string(key) and integer(value) where\n          each string(key) is a namespace that should be provided, but is not\n          and integer(value) is first line number where it's required.\n      token: The token where the error was detected (also where the new provides\n          will be inserted.\n      need_blank_line: Whether a blank line needs to be inserted after the new\n          provides are inserted. May be True, False, or None, where None\n          indicates that the insert location is unknown.\n    "
    missing_provides_msg = 'Missing the following goog.provide statements:\n'
    missing_provides_msg += '\n'.join([("goog.provide('%s');" % x) for x in sorted(missing_provides)])
    missing_provides_msg += '\n'
    missing_provides_msg += '\nFirst line where provided: \n'
    missing_provides_msg += '\n'.join([('  %s : line %d' % (x, missing_provides[x])) for x in sorted(missing_provides)])
    missing_provides_msg += '\n'
    self._HandleError(errors.MISSING_GOOG_PROVIDE, missing_provides_msg, token, position=Position.AtBeginning(), fix_data=(missing_provides.keys(), need_blank_line))

dataset/ETHPy150Open google/closure-linter/closure_linter/javascriptlintrules.py JavaScriptLintRules._ReportMissingProvides/original