From ee042d11d8aa453fc8b2febf10cd979dd26f2941 Mon Sep 17 00:00:00 2001 From: Claudiu Popa Date: Mon, 7 Dec 2015 13:41:12 +0200 Subject: Move the construction of generated_members into open. --- pylint/checkers/typecheck.py | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/pylint/checkers/typecheck.py b/pylint/checkers/typecheck.py index 46535d2..076f21a 100644 --- a/pylint/checkers/typecheck.py +++ b/pylint/checkers/typecheck.py @@ -317,7 +317,15 @@ accessed. Python regular expressions are accepted.'} def open(self): # do this in open since config not fully initialized in __init__ - self.generated_members = list(self.config.generated_members) + # generated_members may contain regular expressions + # (surrounded by quote `"` and followed by a comma `,`) + # REQUEST,aq_parent,"[a-zA-Z]+_set{1,2}"' => + # ('REQUEST', 'aq_parent', '[a-zA-Z]+_set{1,2}') + if isinstance(self.config.generated_members, str): + gen = shlex.shlex(self.config.generated_members) + gen.whitespace += ',' + gen.wordchars += '[]-+' + self.config.generated_members = tuple(tok.strip('"') for tok in gen) def visit_assignattr(self, node): if isinstance(node.assign_type(), astroid.AugAssign): @@ -335,19 +343,11 @@ accessed. Python regular expressions are accepted.'} function/method, super call and metaclasses are ignored """ - # generated_members may contain regular expressions - # (surrounded by quote `"` and followed by a comma `,`) - # REQUEST,aq_parent,"[a-zA-Z]+_set{1,2}"' => - # ('REQUEST', 'aq_parent', '[a-zA-Z]+_set{1,2}') - if isinstance(self.config.generated_members, str): - gen = shlex.shlex(self.config.generated_members) - gen.whitespace += ',' - gen.wordchars += '[]-+' - self.config.generated_members = tuple(tok.strip('"') for tok in gen) for pattern in self.config.generated_members: # attribute is marked as generated, stop here if re.match(pattern, node.attrname): return + try: infered = list(node.expr.infer()) except exceptions.InferenceError: -- cgit v1.2.1