Remove __ from the end of _name_ if it starts with __classname__ return the "unmangled" name.
(self, co, classname)
| 156 | |
| 157 | @classmethod |
| 158 | def unmangle_code_names(self, co, classname): |
| 159 | """Remove __ from the end of _name_ if it starts with __classname__ |
| 160 | return the "unmangled" name. |
| 161 | """ |
| 162 | if classname: |
| 163 | classname = "_" + classname.lstrip("_") + "__" |
| 164 | |
| 165 | if hasattr(co, "co_cellvars"): |
| 166 | free = [ |
| 167 | self.unmangle_name(name, classname) |
| 168 | for name in (co.co_cellvars + co.co_freevars) |
| 169 | ] |
| 170 | else: |
| 171 | free = () |
| 172 | |
| 173 | names = [self.unmangle_name(name, classname) for name in co.co_names] |
| 174 | varnames = [self.unmangle_name(name, classname) for name in co.co_varnames] |
| 175 | else: |
| 176 | if hasattr(co, "co_cellvars"): |
| 177 | free = co.co_cellvars + co.co_freevars |
| 178 | else: |
| 179 | free = () |
| 180 | names = co.co_names |
| 181 | varnames = co.co_varnames |
| 182 | return free, names, varnames |
| 183 | |
| 184 | def ingest(self, co, classname=None, code_objects={}, show_asm=None): |
| 185 | """ |
no test coverage detected