lsif-protocol
Advanced tools
Comparing version 0.4.3 to 0.5.0-next.1
@@ -24,2 +24,3 @@ import * as lsp from 'vscode-languageserver-protocol'; | ||
project = "project", | ||
group = "group", | ||
range = "range", | ||
@@ -61,2 +62,3 @@ location = "location", | ||
export declare enum EventScope { | ||
group = "group", | ||
project = "project", | ||
@@ -68,9 +70,16 @@ document = "document" | ||
/** | ||
* The event scope. | ||
*/ | ||
scope: EventScope; | ||
/** | ||
* The event kind. | ||
*/ | ||
kind: EventKind; | ||
} | ||
export interface GroupEvent extends Event { | ||
scope: EventScope.group; | ||
/** | ||
* The event scope. | ||
* The id of the group vertex. | ||
*/ | ||
scope: EventScope; | ||
data: Id; | ||
} | ||
@@ -266,6 +275,2 @@ export interface ProjectEvent extends Event { | ||
/** | ||
* The project root (in form of a URI) used to compute this dump. | ||
*/ | ||
projectRoot: Uri; | ||
/** | ||
* The string encoding used to compute line and character values in | ||
@@ -285,2 +290,46 @@ * positions and ranges. Currently only 'utf-16' is support due to the | ||
} | ||
export interface Group extends V { | ||
/** | ||
* The label property. | ||
*/ | ||
label: VertexLabels.group; | ||
/** | ||
* The group uri | ||
*/ | ||
uri: Uri; | ||
/** | ||
* Groups are usually shared between project dumps. This property indicates how a DB should | ||
* handle group information coming from different project dumps. In case of a conflict (the group | ||
* already exists in a DB) the values' meaning are: | ||
* | ||
* - `takeDump`: information of the group should overwrite information in a DB. | ||
* - `takeDB`: information of the group is ignored. The DB values stay as is. | ||
*/ | ||
conflictResolution: 'takeDump' | 'takeDB'; | ||
/** | ||
* The group name | ||
*/ | ||
name: string; | ||
/** | ||
* The group root folder uri | ||
*/ | ||
rootUri: Uri; | ||
/** | ||
* The group description | ||
*/ | ||
description?: string; | ||
/** | ||
* Optional information about the repository containing the source of the package. | ||
*/ | ||
repository?: { | ||
/** | ||
* The repository type. For example GIT | ||
*/ | ||
type: string; | ||
/** | ||
* The URL to the repository | ||
*/ | ||
url: string; | ||
}; | ||
} | ||
/** | ||
@@ -300,2 +349,6 @@ * A project vertex. | ||
/** | ||
* The project name | ||
*/ | ||
name: string; | ||
/** | ||
* The resource URI of the project file. | ||
@@ -350,2 +403,25 @@ */ | ||
} | ||
export declare enum UniquenessLevel { | ||
/** | ||
* The moniker is only unique inside a file | ||
*/ | ||
file = "file", | ||
/** | ||
* The moniker is unique inside a project for which a dump got created | ||
*/ | ||
project = "project", | ||
/** | ||
* The moniker is unique inside the group to which a project belongs | ||
*/ | ||
group = "group", | ||
/** | ||
* The moniker is unique inside the package mamanger, usually expressed through | ||
* the moniker scheme | ||
*/ | ||
packageManager = "packageManager", | ||
/** | ||
* The moniker is gloabally unique | ||
*/ | ||
global = "global" | ||
} | ||
export interface Moniker extends V { | ||
@@ -363,2 +439,6 @@ label: VertexLabels.moniker; | ||
/** | ||
* The scope in which the moniker is unique | ||
*/ | ||
unique: UniquenessLevel; | ||
/** | ||
* The moniker kind if known. | ||
@@ -391,3 +471,3 @@ */ | ||
/** | ||
* Otional information about the repository containing the source of the package | ||
* Optional information about the repository containing the source of the package. | ||
*/ | ||
@@ -530,3 +610,3 @@ repository?: { | ||
*/ | ||
export declare type Vertex = MetaData | ProjectEvent | DocumentEvent | Project | Document | Moniker | PackageInformation | ResultSet | Range | DocumentSymbolResult | FoldingRangeResult | DocumentLinkResult | DiagnosticResult | DefinitionResult | DeclarationResult | TypeDefinitionResult | HoverResult | ReferenceResult | ImplementationResult; | ||
export declare type Vertex = MetaData | Event | Project | Group | Document | Moniker | PackageInformation | ResultSet | Range | DocumentSymbolResult | FoldingRangeResult | DocumentLinkResult | DiagnosticResult | DefinitionResult | DeclarationResult | TypeDefinitionResult | HoverResult | ReferenceResult | ImplementationResult; | ||
export declare enum EdgeLabels { | ||
@@ -537,4 +617,5 @@ contains = "contains", | ||
moniker = "moniker", | ||
nextMoniker = "nextMoniker", | ||
attach = "attach", | ||
packageInformation = "packageInformation", | ||
belongsTo = "belongsTo", | ||
textDocument_documentSymbol = "textDocument/documentSymbol", | ||
@@ -590,6 +671,8 @@ textDocument_foldingRange = "textDocument/foldingRange", | ||
referenceResults = "referenceResults", | ||
implementationResults = "implementationResults" | ||
referenceCascades = "referenceCascades", | ||
implementationResults = "implementationResults", | ||
implementationCascades = "implementationCascades" | ||
} | ||
export interface ItemEdge<S extends V, T extends V> extends E1N<S, T, EdgeLabels.item> { | ||
document: Id; | ||
document: DocumentId; | ||
property?: ItemEdgeProperties; | ||
@@ -601,3 +684,2 @@ } | ||
* - `Project` -> `Document` | ||
* - `Package` -> `Document` | ||
* - `Document` -> `Range` | ||
@@ -619,3 +701,3 @@ */ | ||
*/ | ||
export declare type item = ItemEdge<DeclarationResult, Range> | ItemEdge<DefinitionResult, Range> | ItemEdge<TypeDefinitionResult, Range> | ItemEdge<ReferenceResult, Range> | ItemEdge<ReferenceResult, ReferenceResult> | ItemEdge<ImplementationResult, Range> | ItemEdge<ImplementationResult, ImplementationResult>; | ||
export declare type item = ItemEdge<DeclarationResult, Range> | ItemEdge<DefinitionResult, Range> | ItemEdge<TypeDefinitionResult, Range> | ItemEdge<ReferenceResult, Range> | ItemEdge<ReferenceResult, ReferenceResult> | ItemEdge<ReferenceResult, Moniker> | ItemEdge<ImplementationResult, Range> | ItemEdge<ImplementationResult, ImplementationResult> | ItemEdge<ImplementationResult, Moniker>; | ||
/** | ||
@@ -638,3 +720,3 @@ * An edge associating a range with a moniker. The relationship exists between: | ||
*/ | ||
export declare type nextMoniker = E11<Moniker, Moniker, EdgeLabels.nextMoniker>; | ||
export declare type attach = E11<Moniker, Moniker, EdgeLabels.attach>; | ||
/** | ||
@@ -647,2 +729,8 @@ * An edge associating a moniker with a package information. The relationship exists between: | ||
/** | ||
* An edge associating a project with a group. The relationship exists between: | ||
* | ||
* - `Project` -> `Group` | ||
*/ | ||
export declare type belongsTo = E11<Project, Group, EdgeLabels.belongsTo>; | ||
/** | ||
* An edge representing a `textDocument/documentSymbol` relationship. The relationship exists between: | ||
@@ -718,3 +806,3 @@ * | ||
*/ | ||
export declare type Edge = contains | item | next | moniker | nextMoniker | packageInformation | textDocument_documentSymbol | textDocument_foldingRange | textDocument_documentLink | textDocument_diagnostic | textDocument_declaration | textDocument_definition | textDocument_typeDefinition | textDocument_hover | textDocument_references | textDocument_implementation; | ||
export declare type Edge = contains | item | next | moniker | attach | packageInformation | belongsTo | textDocument_documentSymbol | textDocument_foldingRange | textDocument_documentLink | textDocument_diagnostic | textDocument_declaration | textDocument_definition | textDocument_typeDefinition | textDocument_hover | textDocument_references | textDocument_implementation; | ||
export declare namespace Edge { | ||
@@ -721,0 +809,0 @@ function is11(edge: Edge): edge is (Edge & { |
@@ -20,2 +20,3 @@ "use strict"; | ||
VertexLabels["project"] = "project"; | ||
VertexLabels["group"] = "group"; | ||
VertexLabels["range"] = "range"; | ||
@@ -51,2 +52,3 @@ VertexLabels["location"] = "location"; | ||
(function (EventScope) { | ||
EventScope["group"] = "group"; | ||
EventScope["project"] = "project"; | ||
@@ -84,2 +86,26 @@ EventScope["document"] = "document"; | ||
})(MonikerKind = exports.MonikerKind || (exports.MonikerKind = {})); | ||
var UniquenessLevel; | ||
(function (UniquenessLevel) { | ||
/** | ||
* The moniker is only unique inside a file | ||
*/ | ||
UniquenessLevel["file"] = "file"; | ||
/** | ||
* The moniker is unique inside a project for which a dump got created | ||
*/ | ||
UniquenessLevel["project"] = "project"; | ||
/** | ||
* The moniker is unique inside the group to which a project belongs | ||
*/ | ||
UniquenessLevel["group"] = "group"; | ||
/** | ||
* The moniker is unique inside the package mamanger, usually expressed through | ||
* the moniker scheme | ||
*/ | ||
UniquenessLevel["packageManager"] = "packageManager"; | ||
/** | ||
* The moniker is gloabally unique | ||
*/ | ||
UniquenessLevel["global"] = "global"; | ||
})(UniquenessLevel = exports.UniquenessLevel || (exports.UniquenessLevel = {})); | ||
var EdgeLabels; | ||
@@ -91,4 +117,5 @@ (function (EdgeLabels) { | ||
EdgeLabels["moniker"] = "moniker"; | ||
EdgeLabels["nextMoniker"] = "nextMoniker"; | ||
EdgeLabels["attach"] = "attach"; | ||
EdgeLabels["packageInformation"] = "packageInformation"; | ||
EdgeLabels["belongsTo"] = "belongsTo"; | ||
EdgeLabels["textDocument_documentSymbol"] = "textDocument/documentSymbol"; | ||
@@ -111,3 +138,5 @@ EdgeLabels["textDocument_foldingRange"] = "textDocument/foldingRange"; | ||
ItemEdgeProperties["referenceResults"] = "referenceResults"; | ||
ItemEdgeProperties["referenceCascades"] = "referenceCascades"; | ||
ItemEdgeProperties["implementationResults"] = "implementationResults"; | ||
ItemEdgeProperties["implementationCascades"] = "implementationCascades"; | ||
})(ItemEdgeProperties = exports.ItemEdgeProperties || (exports.ItemEdgeProperties = {})); | ||
@@ -114,0 +143,0 @@ var Edge; |
{ | ||
"name": "lsif-protocol", | ||
"description": "Typescript implementation of the LSIF protocol", | ||
"version": "0.4.3", | ||
"version": "0.5.0-next.1", | ||
"author": "Microsoft Corporation", | ||
@@ -17,3 +17,3 @@ "license": "MIT", | ||
"dependencies": { | ||
"vscode-languageserver-protocol": "^3.14.1" | ||
"vscode-languageserver-protocol": "^3.15.3" | ||
}, | ||
@@ -20,0 +20,0 @@ "scripts": { |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
34794
8
976