Format a single value with appropriate coloring.
(value: Any, colorize: bool = True)
| 460 | |
| 461 | |
| 462 | def _format_value(value: Any, colorize: bool = True) -> str: |
| 463 | """Format a single value with appropriate coloring.""" |
| 464 | if not colorize: |
| 465 | if isinstance(value, str): |
| 466 | return f"'{value}'" |
| 467 | return str(value) |
| 468 | |
| 469 | if isinstance(value, bool): |
| 470 | if value: |
| 471 | return f"{Colors.BOOLEAN_TRUE}{value}{Colors.RESET}" |
| 472 | else: |
| 473 | return f"{Colors.BOOLEAN_FALSE}{value}{Colors.RESET}" |
| 474 | elif isinstance(value, (int, float)): |
| 475 | return f"{Colors.NUMBER}{value}{Colors.RESET}" |
| 476 | elif isinstance(value, str): |
| 477 | # Truncate long strings |
| 478 | if len(value) > 50: |
| 479 | truncated = value[:47] + "..." |
| 480 | return f"{Colors.STRING}'{truncated}'{Colors.RESET}" |
| 481 | return f"{Colors.STRING}'{value}'{Colors.RESET}" |
| 482 | elif value is None: |
| 483 | return f"{Colors.BOOLEAN_NONE}None{Colors.RESET}" |
| 484 | else: |
| 485 | return f"{Colors.STRING}{repr(value)}{Colors.RESET}" |
| 486 | |
| 487 | |
| 488 | # ============================================================================= |
no outgoing calls