Weftmap
Documentación

Lenguajes

Weftmap soporta seis lenguajes hoy. La arquitectura es ampliable: cada lenguaje es una gramática de tree-sitter más un conjunto de consultas. Cinco generan un call graph; SQL genera un diagrama entidad-relación.

LenguajeFuncionesClasesImportsHerencia
Python
JavaScript
TypeScript
Go
Rust

Notas por lenguaje

  • Python — funciones, clases y métodos; resuelve import y from … import (incluidos relativos) y la herencia entre clases.
  • JavaScript — funciones (incluidas arrow asignadas), clases y métodos; imports ES relativos (./x) y extends.
  • TypeScript — igual que JavaScript pero con la gramática dedicada, así las anotaciones de tipos se parsean sin problemas.
  • Go — funciones y métodos. Go no tiene clases, así que no hay nodos de clase ni herencia.
  • Rust — funciones y llamadas. La resolución entre archivos usa definiciones únicas.
  • SQL — diagrama ER a partir de DDL (CREATE TABLE, ALTER TABLE): tablas con columnas y tipos, claves PK/FK, relaciones por foreign key con cardinalidad (1:1, 1:N y N:M vía tablas puente). Orientado a PostgreSQL.
En Go y Rust los imports son por paquete o módulo (no por archivo), así que no se dibujan aristas de import. Las llamadas entre archivos del mismo paquete sí se resuelven por nombre. SQL es un tipo de diagrama distinto: en lugar de funciones y llamadas, dibuja tablas y relaciones.