(value: str)
| 564 | |
| 565 | |
| 566 | def parse_value(value: str) -> Union[str, float, bool, None]: |
| 567 | const_map = { |
| 568 | 'True': True, |
| 569 | 'true': True, |
| 570 | 'False': False, |
| 571 | 'false': False, |
| 572 | 'None': None, |
| 573 | 'none': None, |
| 574 | 'null': None |
| 575 | } |
| 576 | if value in const_map: |
| 577 | return const_map[value] |
| 578 | elif '"' in value or "'" in value: |
| 579 | return value.replace('"', '').replace("'", '') |
| 580 | elif re.match(r'^\d+$', value): |
| 581 | return int(value) |
| 582 | elif re.match(r'[+-]?(?=\d*[.eE])(?=\.?\d)\d*\.?\d*(?:[eE][+-]?\d+)?', |
| 583 | value): |
| 584 | return float(value) |
| 585 | else: |
| 586 | return value |
no test coverage detected
searching dependent graphs…