You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
zalan-racz-gaijin edited this page Jun 14, 2024
·
3 revisions
This page is under construction.
Core
Helper
The helper folder contains helper functionality, and it contains information about the DSHL and HLSL language constructs.
Interface
The interface folder contains interfaces to store information about the analyzed documents. They don't contain any logic, just data structures and some to string functions.
Processor
The processor folder contains files which change or analyze a document.
Provider
The provider folder contains all the Language Server Protocol providers. Basically one file per feature. The only exception is link-provider-base.ts, which is not a feature itself, but a generalization of go to definition, go to declaration, go to implementation and go to type declaration. They all have a function with parameters and return type defined in the Language Server Protocol. The first step of the implementation is usually to get the Snapshot corresponding to the file. The function getSnapshot takes care of the analyzation if necessary in the background. The only remaining thing is to get the required data from the Snapshot, and return it. Returning a null, undefined , [], or throwing an exception is handled by VS Code, but not always in the same way.