input_api.AffectedSourceFiles(source_filter)]
level = 1 # strict, but just warn
+ # TODO(danakj): Temporary, while the OVERRIDE and FINAL fixup is in progress.
+ # crbug.com/422353
+ input_api.cpplint._SetFilters('-readability/inheritance')
+
for file_name in files:
input_api.cpplint.ProcessFile(file_name, level)
if errors:
return [output_api.PresubmitError(
- 'All TODO comments should be of the form TODO(name).',
+ 'All TODO comments should be of the form TODO(name). ' +
+ 'Use TODO instead of FIX' + 'ME',
items=errors)]
return []
+def CheckDoubleAngles(input_api, output_api, white_list=CC_SOURCE_FILES,
+ black_list=None):
+ errors = []
+
+ source_file_filter = lambda x: input_api.FilterSourceFile(x,
+ white_list,
+ black_list)
+ for f in input_api.AffectedSourceFiles(source_file_filter):
+ contents = input_api.ReadFile(f, 'rb')
+ if ('> >') in contents:
+ errors.append(f.LocalPath())
+
+ if errors:
+ return [output_api.PresubmitError('Use >> instead of > >:', items=errors)]
+ return []
+
+def CheckScopedPtr(input_api, output_api,
+ white_list=CC_SOURCE_FILES, black_list=None):
+ black_list = tuple(black_list or input_api.DEFAULT_BLACK_LIST)
+ source_file_filter = lambda x: input_api.FilterSourceFile(x,
+ white_list,
+ black_list)
+ errors = []
+ for f in input_api.AffectedSourceFiles(source_file_filter):
+ for line_number, line in f.ChangedContents():
+ # Disallow:
+ # return scoped_ptr<T>(foo);
+ # bar = scoped_ptr<T>(foo);
+ # But allow:
+ # return scoped_ptr<T[]>(foo);
+ # bar = scoped_ptr<T[]>(foo);
+ if re.search(r'(=|\breturn)\s*scoped_ptr<.*?(?<!])>\([^)]+\)', line):
+ errors.append(output_api.PresubmitError(
+ ('%s:%d uses explicit scoped_ptr constructor. ' +
+ 'Use make_scoped_ptr() instead.') % (f.LocalPath(), line_number)))
+ # Disallow:
+ # scoped_ptr<T>()
+ if re.search(r'\bscoped_ptr<.*?>\(\)', line):
+ errors.append(output_api.PresubmitError(
+ '%s:%d uses scoped_ptr<T>(). Use nullptr instead.' %
+ (f.LocalPath(), line_number)))
+ return errors
+
def FindUnquotedQuote(contents, pos):
match = re.search(r"(?<!\\)(?P<quote>\")", contents[pos:])
return -1 if not match else match.start("quote") + pos
results += CheckPassByValue(input_api, output_api)
results += CheckChangeLintsClean(input_api, output_api)
results += CheckTodos(input_api, output_api)
+ results += CheckDoubleAngles(input_api, output_api)
+ results += CheckScopedPtr(input_api, output_api)
results += CheckNamespace(input_api, output_api)
results += CheckForUseOfWrongClock(input_api, output_api)
results += FindUselessIfdefs(input_api, output_api)
'tryserver.blink': {
'linux_blink_rel': set(['defaulttests']),
},
- 'tryserver.chromium.gpu': {
- 'linux_gpu': set(['defaulttests']),
- 'mac_gpu': set(['defaulttests']),
- 'win_gpu': set(['defaulttests']),
- },
}