(self, identifier)
| 1493 | complete_tbreak = _complete_location |
| 1494 | |
| 1495 | def lineinfo(self, identifier): |
| 1496 | failed = (None, None, None) |
| 1497 | # Input is identifier, may be in single quotes |
| 1498 | idstring = identifier.split("'") |
| 1499 | if len(idstring) == 1: |
| 1500 | # not in single quotes |
| 1501 | id = idstring[0].strip() |
| 1502 | elif len(idstring) == 3: |
| 1503 | # quoted |
| 1504 | id = idstring[1].strip() |
| 1505 | else: |
| 1506 | return failed |
| 1507 | if id == '': return failed |
| 1508 | parts = id.split('.') |
| 1509 | # Protection for derived debuggers |
| 1510 | if parts[0] == 'self': |
| 1511 | del parts[0] |
| 1512 | if len(parts) == 0: |
| 1513 | return failed |
| 1514 | # Best first guess at file to look at |
| 1515 | fname = self.defaultFile() |
| 1516 | if len(parts) == 1: |
| 1517 | item = parts[0] |
| 1518 | else: |
| 1519 | # More than one part. |
| 1520 | # First is module, second is method/class |
| 1521 | f = self.lookupmodule(parts[0]) |
| 1522 | if f: |
| 1523 | fname = f |
| 1524 | item = parts[1] |
| 1525 | else: |
| 1526 | return failed |
| 1527 | answer = find_function(item, self.canonic(fname)) |
| 1528 | return answer or failed |
| 1529 | |
| 1530 | def checkline(self, filename, lineno, module_globals=None): |
| 1531 | """Check whether specified line seems to be executable. |
no test coverage detected