How to use the lsif-protocol.EdgeLabels.item function in lsif-protocol

To help you get started, we’ve selected a few lsif-protocol examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github microsoft / lsif-node / tsc / src / emitters / graphSON.ts View on Github external
export const create: Create = (idGenerator: () => Id): Emitter => {
	let vertices: Map;
	const labelMap: Map = new Map([
		[EdgeLabels.item, 'item'],
		[EdgeLabels.contains, 'contains'],
		[EdgeLabels.refersTo, 'refersTo'],
		[EdgeLabels.textDocument_documentSymbol, 'textDocument.documentSymbol'],
		[EdgeLabels.textDocument_foldingRange, 'textDocument.foldingRange'],
		[EdgeLabels.textDocument_diagnostic, 'textDocument.diagnostic'],
		[EdgeLabels.textDocument_documentLink, 'textDocument.documentLink'],
		[EdgeLabels.textDocument_definition, 'textDocument.definition'],
		[EdgeLabels.textDocument_typeDefinition, 'textDocument.typeDefinition'],
		[EdgeLabels.textDocument_hover, 'textDocument.hover'],
		[EdgeLabels.textDocument_references, 'textDocument.references'],
		[EdgeLabels.textDocument_implementation, 'textDocument.implementation'],
	]);
	return {
		start: () => {
			vertices = new Map();
		},
github microsoft / lsif-node / tsc / src / emitters / graphSON.ts View on Github external
export const create: Create = (writer: Writer, idGenerator: () => Id): Emitter => {
	let vertices: Map;
	const labelMap: Map = new Map([
		[EdgeLabels.item, 'item'],
		[EdgeLabels.contains, 'contains'],
		[EdgeLabels.next, 'next'],
		[EdgeLabels.textDocument_documentSymbol, 'textDocument.documentSymbol'],
		[EdgeLabels.textDocument_foldingRange, 'textDocument.foldingRange'],
		[EdgeLabels.textDocument_diagnostic, 'textDocument.diagnostic'],
		[EdgeLabels.textDocument_documentLink, 'textDocument.documentLink'],
		[EdgeLabels.textDocument_definition, 'textDocument.definition'],
		[EdgeLabels.textDocument_typeDefinition, 'textDocument.typeDefinition'],
		[EdgeLabels.textDocument_hover, 'textDocument.hover'],
		[EdgeLabels.textDocument_references, 'textDocument.references'],
		[EdgeLabels.textDocument_implementation, 'textDocument.implementation'],
	]);
	return {
		start: () => {
			vertices = new Map();
		},
github microsoft / vscode-lsif-extension / server / src / json.ts View on Github external
if (to === void 0) {
			throw new Error(`No vertex found for Id ${edge.inV}`);
		}
		let values: any[] | undefined;
		switch (edge.label) {
			case EdgeLabels.contains:
				values = this.out.contains.get(from.id);
				if (values === void 0) {
					values = [ to as any ];
					this.out.contains.set(from.id, values);
				} else {
					values.push(to);
				}
				this.in.contains.set(to.id, from as any);
				break;
			case EdgeLabels.item:
				values = this.out.item.get(from.id);
				let itemTarget: ItemTarget | undefined;
				switch (edge.property) {
					case ItemEdgeProperties.references:
						itemTarget = { type: edge.property, range: to as Range };
						break;
					case ItemEdgeProperties.declarations:
						itemTarget = { type: edge.property, range: to as Range };
						break;
					case ItemEdgeProperties.definitions:
						itemTarget = { type: edge.property, range: to as Range };
						break;
					case ItemEdgeProperties.referenceResults:
						itemTarget = { type: edge.property, result: to as ReferenceResult };
						break;
				}
github microsoft / lsif-node / sqlite / src / graphStore.ts View on Github external
break;
				case VertexLabels.packageInformation:
					this.insertPackageInformation(element);
					break;
				case VertexLabels.range:
					this.insertRange(element);
					break;
				default:
					this.insertVertex(element);
			}
		} else {
			switch(element.label) {
				case EdgeLabels.contains:
					this.insertContains(element);
					break;
				case EdgeLabels.item:
					this.insertItem(element);
					break;
				default:
					this.insertEdge(element);
			}
		}
	}
github microsoft / lsif-node / sqlite / src / blobStore.ts View on Github external
case EdgeLabels.textDocument_diagnostic:
					this.handleDiagnosticsEdge(element);
					break;
				case EdgeLabels.textDocument_hover:
					this.handleHoverEdge(element);
					break;
				case EdgeLabels.textDocument_declaration:
					this.handleDeclarationEdge(element);
					break;
				case EdgeLabels.textDocument_definition:
					this.handleDefinitionEdge(element);
					break;
				case EdgeLabels.textDocument_references:
					this.handleReferenceEdge(element);
					break;
				case EdgeLabels.item:
					this.handleItemEdge(element);
					break;
				case EdgeLabels.contains:
					this.handleContains(element);
					break;
			}
		}
	}