in project/paperbench/paperbench/judge/judge.py [0:0]
def _create_tree_structure(self, files: list[Path]) -> str:
"""Creates a tree-like structure visualization of files."""
tree = {}
for file in files:
current = tree
for part in file.parts:
if part not in current:
current[part] = {}
current = current[part]
def _build_tree(node: dict, prefix: str = "") -> str:
lines = []
items = list(node.items())
for i, (name, subtree) in enumerate(items):
is_last_item = i == len(items) - 1
connector = "└── " if is_last_item else "├── "
lines.append(f"{prefix}{connector}{name}")
if subtree:
extension = " " if is_last_item else "│ "
subtree_lines = _build_tree(subtree, prefix + extension)
lines.append(subtree_lines)
return "\n".join(lines)
return _build_tree(tree)