Ragex. Analyzers. SCIP. Adapter
(Ragex v0.15.0)
View Source
Translates parsed SCIP analysis results into Ragex knowledge graph operations.
Takes the output of Ragex.Analyzers.SCIP.Parser.parse/2 and feeds it
into Ragex.Graph.Store via add_node/3 and add_edge/4, making
SCIP-indexed code available to all existing Ragex tools (search, graph
algorithms, impact analysis, etc.).
Node type mapping
- SCIP modules ->
:modulenodes (withsource: :scipmetadata) - SCIP functions ->
:functionnodes - SCIP files ->
:filenodes
Edge type mapping
- SCIP definitions ->
:definesedges (module -> function) - SCIP references ->
:callsedges (function -> function) - SCIP imports ->
:importsedges (module -> module)
Summary
Functions
Full pipeline: index a project with SCIP, parse, and ingest into the graph.
Ingest a parsed SCIP analysis result into the knowledge graph.
Ingest from an existing SCIP index file (e.g. generated by CI).
Functions
Full pipeline: index a project with SCIP, parse, and ingest into the graph.
Parameters
project_dir-- absolute path to the projectlanguage-- language to index (e.g. "go", "rust", "java")opts-- passed toIndexer.index/3andingest/2
Returns
{:ok, stats} or {:error, reason}
Ingest a parsed SCIP analysis result into the knowledge graph.
Parameters
analysis-- the result fromParser.parse/2opts-- options::generate_embeddings-- whether to generate embeddings (defaultfalse)
Returns
{:ok, stats} with counts of nodes and edges added.
Ingest from an existing SCIP index file (e.g. generated by CI).
Parameters
project_dir-- project rootindex_path-- path to theindex.scipfileopts-- passed toingest/2