Message178444
Given an input module such as class klass(object): """multi line comment continued on this line """ """single line comment""" """ Another multi line comment""" and implementing a custom ast.NodeVisitor such as import as class CustomVisitor(ast.NodeVisitor): def visit_ClassDef(self, node): for childNode in node.body: self.visit(childNode) def visit_Expr(self, node): print(node.col_offset) print(node.value.col_offset) and feeding it the compiled ast from the module above f = open('./module.py') source = f.read() node = ast.parse(source, mode = 'exec') visitor = CustomVisitor() visitor.visit(node) should yield -1/-1 for the docstring that is the first child node expression of the classdef body. it will, however, yield the correct col_offset of 4/4 for the single line docstring following the first one. the multi line docstring following that will again yield a -1/-1 col_offset. It believe that this behaviour is not correct and instead the col_offset should be 4 for both the expression node and its str value. | |
| Date | User | Action | Args | | 2012-12-29 00:08:22 | carsten.klein@axn-software.de | set | recipients: + carsten.klein@axn-software.de | | 2012-12-29 00:08:22 | carsten.klein@axn-software.de | set | messageid: <1356739702.66.0.625233113719.issue16806@psf.upfronthosting.co.za> | | 2012-12-29 00:08:22 | carsten.klein@axn-software.de | link | issue16806 messages | | 2012-12-29 00:08:21 | carsten.klein@axn-software.de | create | | |