Coverage for integrations / coding_agent / aider_core / dump.py: 20.0%

20 statements  

« prev     ^ index     » next       coverage.py v7.14.0, created at 2026-05-12 04:49 +0000

1import json 

2import traceback 

3 

4 

5def cvt(s): 

6 if isinstance(s, str): 

7 return s 

8 try: 

9 return json.dumps(s, indent=4) 

10 except TypeError: 

11 return str(s) 

12 

13 

14def dump(*vals): 

15 # http://docs.python.org/library/traceback.html 

16 stack = traceback.extract_stack() 

17 vars = stack[-2][3] 

18 

19 # strip away the call to dump() 

20 vars = "(".join(vars.split("(")[1:]) 

21 vars = ")".join(vars.split(")")[:-1]) 

22 

23 vals = [cvt(v) for v in vals] 

24 has_newline = sum(1 for v in vals if "\n" in v) 

25 if has_newline: 

26 print("%s:" % vars) 

27 print(", ".join(vals)) 

28 else: 

29 print("%s:" % vars, ", ".join(vals))