aboutsummaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2024-09-16 13:54:47 -0400
committerBruce Hill <bruce@bruce-hill.com>2024-09-16 13:54:47 -0400
commitc5396d65a8f766266b81b58acb7b1a457e7491a2 (patch)
tree40a25c8927aa672c6f8268206b1a6c28bd15e8c7 /examples
parent1f23a4f0e31b30a48910c7f208325ddb9a3320eb (diff)
Fix up tomodeps
Diffstat (limited to 'examples')
-rw-r--r--examples/tomodeps/tomodeps.tm17
1 files changed, 4 insertions, 13 deletions
diff --git a/examples/tomodeps/tomodeps.tm b/examples/tomodeps/tomodeps.tm
index e3354136..c1f21775 100644
--- a/examples/tomodeps/tomodeps.tm
+++ b/examples/tomodeps/tomodeps.tm
@@ -1,9 +1,9 @@
# Show a Tomo dependency graph
-_USAGE := "Usage: dependencies <files...>"
+_USAGE := "Usage: tomodeps <files...>"
_HELP := "
- dependencies: Show a file dependency graph for Tomo source files.
+ tomodeps: Show a file dependency graph for Tomo source files.
$_USAGE
"
@@ -33,19 +33,10 @@ func _build_dependency_graph(dep:Dependency, dependencies:&{Dependency:{Dependen
dep_deps := when dep is File(path):
_get_file_dependencies(path)
is Module(module):
- files_path := (~/.local/src/tomo/$module/lib$module.files):resolved()
- if not files_path:is_file():
- !! Could not read file: $files_path
- return
-
- unvisited := {:Path}
- if lines := files_path:by_line():
- for line in lines:
- tm_path := Path.from_unsafe_text(line):resolved(relative_to=(~/.local/src/tomo/$module/))
- unvisited:add(tm_path)
-
+ dir := (~/.local/share/tomo/installed/$module)
module_deps := {:Dependency}
visited := {:Path}
+ unvisited := {f:resolved() for f in dir:files() if f.text_content:ends_with(".tm")}
while unvisited.length > 0:
file := unvisited.items[-1]
unvisited:remove(file)