From 52ac00a50ed53f71e8d09e691dc7b2fd87c6d1e8 Mon Sep 17 00:00:00 2001 From: Joel Nothman Date: Mon, 14 Mar 2022 01:18:23 +1100 Subject: Use isgeneratorfunction to avoid overgenerating YD01 Fixes #365 Could do with a test --- numpydoc/validate.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/numpydoc/validate.py b/numpydoc/validate.py index b4b7e99..d1ee978 100644 --- a/numpydoc/validate.py +++ b/numpydoc/validate.py @@ -178,6 +178,10 @@ class Validator: def is_function_or_method(self): return inspect.isfunction(self.obj) + @property + def is_generator_function(self): + return inspect.isgeneratorfunction(self.obj) + @property def source_file_name(self): """ @@ -596,7 +600,7 @@ def validate(obj_name): for name_or_type, type_, desc in doc.returns: errs.extend(_check_desc(desc, "RT03", "RT04", "RT05")) - if not doc.yields and "yield" in doc.method_source: + if not doc.yields and doc.is_generator_function: errs.append(error("YD01")) if not doc.see_also: -- cgit v1.2.1