(value)
| 724 | |
| 725 | |
| 726 | def literal_stringizer(value): |
| 727 | msg = "literal_stringizer is deprecated and will be removed in 3.0." |
| 728 | warnings.warn(msg, DeprecationWarning) |
| 729 | |
| 730 | def stringize(value): |
| 731 | if isinstance(value, (int, bool)) or value is None: |
| 732 | if value is True: # GML uses 1/0 for boolean values. |
| 733 | buf.write(str(1)) |
| 734 | elif value is False: |
| 735 | buf.write(str(0)) |
| 736 | else: |
| 737 | buf.write(str(value)) |
| 738 | elif isinstance(value, str): |
| 739 | text = repr(value) |
| 740 | if text[0] != "u": |
| 741 | try: |
| 742 | value.encode("latin1") |
| 743 | except UnicodeEncodeError: |
| 744 | text = "u" + text |
| 745 | buf.write(text) |
| 746 | elif isinstance(value, (float, complex, str, bytes)): |
| 747 | buf.write(repr(value)) |
| 748 | elif isinstance(value, list): |
| 749 | buf.write("[") |
| 750 | first = True |
| 751 | for item in value: |
| 752 | if not first: |
| 753 | buf.write(",") |
| 754 | else: |
| 755 | first = False |
| 756 | stringize(item) |
| 757 | buf.write("]") |
| 758 | elif isinstance(value, tuple): |
| 759 | if len(value) > 1: |
| 760 | buf.write("(") |
| 761 | first = True |
| 762 | for item in value: |
| 763 | if not first: |
| 764 | buf.write(",") |
| 765 | else: |
| 766 | first = False |
| 767 | stringize(item) |
| 768 | buf.write(")") |
| 769 | elif value: |
| 770 | buf.write("(") |
| 771 | stringize(value[0]) |
| 772 | buf.write(",)") |
| 773 | else: |
| 774 | buf.write("()") |
| 775 | elif isinstance(value, dict): |
| 776 | buf.write("{") |
| 777 | first = True |
| 778 | for key, value in value.items(): |
| 779 | if not first: |
| 780 | buf.write(",") |
| 781 | else: |
| 782 | first = False |
| 783 | stringize(key) |
nothing calls this directly
no test coverage detected