Este fork de colbymchenry/codegraph
añade soporte para indexar proyectos Microsoft Access / VBA
(.bas, .cls, .form.txt, .report.txt).
El upstream no incluye VBA en su mapa de extensiones
(src/extraction/grammars.ts), así que los proyectos de esta organización no
entran al índice. La lógica de negocio vive en los .bas y .cls, no en el
resto del repo, por lo que el grafo queda inútil sin VBA.
.clses la fuente de verdad del código de un formulario..form.txtcontiene solo UI (controles, layout, propiedades).- El extractor UI no debe emitir nodos
function/sub/moduledesde.form.txt: cualquier código que el editor Access serializa ahí se ignora y se sobrescribe en el próximo import por Dysflow.
src/types.ts: añadir'vba'al arrayLANGUAGES.src/extraction/grammars.ts:- Mapear
.bas/.cls/.frm/.dsr/.form.txt/.report.txta'vba'. - Ampliar
isLanguageSupportedygetLanguageDisplayName.
- Mapear
src/extraction/vba-extractor.ts(nuevo): extractor regex para.basy.cls. Detecta:Public Function / Private Function / Public Sub / Private Sub.Property Get / Let / Set.Dim … As New Clase,New Clase.WithEvents m_X As Form_Foo+ handlersm_X_Evento.- Call sites
Identificador.Identificador(. - SQL embebido:
FROM <tabla>,INTO <tabla>,UPDATE <tabla>.
src/extraction/vba-form-extractor.ts(nuevo): extractor UI para.form.txty.report.txt. Solo nodospropertypor control y un edgereferencesal.clsdel mismobasename.src/extraction/index.ts: registrar ambos extractores donde hoy se enrutanliquid,razor,vue,svelte.- Tests en
__tests__/con fixtures de00_EXPEDIENTES_stagingy00_NO_CONFORMIDADES_staging.
Todas las edges sintéticas deben llevar provenance: 'heuristic' y
metadata.synthesizedBy (vba-name-resolution, vba-new-binding,
vba-withevents, vba-sql-table, vba-form-binding).
origin:ardelperal/codegraph-vba(este fork).upstream:colbymchenry/codegraph(fuente original).
git fetch upstream
git checkout main
git merge upstream/main