Skip to content

lsif-typed: Symbol relationships

Warren Gifford requested to merge ef/lsif-typed-symbol-relationships into main

Created by: efritz

From https://github.com/sourcegraph/sourcegraph/pull/29767#discussion_r785070799:

Proposal (or CMV): it would be nicer to flip this encoding instead of having three "tagged" lists (where tags are reference, implementation, and type_definition) with overlapping symbol names to have a single list of symbols, each of which can be tagged. This should reduce the amount of data on the wire (if duplicate string occurrences are a formatting concern here; I'm not sure).

It feels more natural, and also more extensible via enum value, to have something similar to:

{
   "relations_to_other_symbols": [
        { "symbol": "A", "tags": ["X", "Y"]},
        { "symbol": "B", "tags": ["Y", "Z"]},
        { "symbol": "C", "tags": ["Z", "W"]},
    ]
}

Merge request reports

Loading