@property<EOL><INDENT>def is_public(self):<DEDENT>
<EOL>for decorator in self.decorators:<EOL><INDENT>if re(r"<STR_LIT>".format(self.name)).match(decorator.name):<EOL><INDENT>return False<EOL><DEDENT><DEDENT>name_is_public = (not self.name.startswith('<STR_LIT:_>') or<EOL>self.name in VARIADIC_MAGIC_METHODS or<EOL>self.is_magic)<EOL>return self.parent.is_public and name_is_public<EOL>
Return True iff this method should be considered public.