UNPKG

pss-langserver

Version:

A Language server for the Portable Stimulus Standard

140 lines (139 loc) 4.96 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.RequestDoxygenGeneration = exports.accessMap = exports.semanticTokensLegend = exports.objType = void 0; /* * Copyright (C) 2025 Darshan(@thisisthedarshan) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <https://www.gnu.org/licenses/>. */ const vscode_languageserver_1 = require("vscode-languageserver"); /* This enum defines the types of objects our AST has */ var objType; (function (objType) { objType["NONE"] = "NONE"; objType["COMPONENT"] = "COMPONENT"; objType["ACTION"] = "ACTION"; objType["ACTIVITY"] = "ACTION"; objType["FUNCTION"] = "FUNCTION"; objType["PROCEDURAL_FUNCTION"] = "PROCEDURAL_FUNCTION"; objType["ENUM"] = "ENUM"; objType["REGISTER_BODY_ITEM"] = "REGISTER_BODY_ITEM"; objType["REGISTER_GROUP"] = "REGISTER_GROUP"; objType["REGISTER_COMP"] = "REGISTER_COMP"; objType["REGISTER_DEF"] = "REGISTER_DEF"; objType["REGISTER"] = "REGISTER"; objType["BUFFER"] = "BUFFER"; objType["STRUCT"] = "STRUCT"; objType["STATE"] = "STATE"; objType["STREAM"] = "STREAM"; objType["POOLS"] = "POOLS"; objType["RESOURCE_OBJECT"] = "RESOURCE_OBJECT"; objType["PACKAGE"] = "PACKAGE"; objType["MONITOR"] = "MONITOR"; objType["CONSTRAINT"] = "CONSTRAINT"; objType["DATA"] = "DATA"; objType["TYPEDEF"] = "TYPEDEF"; objType["CHANDLE"] = "CHANDLE"; objType["INTEGER"] = "INTEGER"; objType["BIT"] = "BIT"; objType["STRING"] = "STRING"; objType["BOOL"] = "BOOL"; objType["FLOAT32"] = "FLOAT32"; objType["FLOAT64"] = "FLOAT64"; objType["REF"] = "REF"; objType["ARRAY"] = "ARRAY"; objType["LIST"] = "LIST"; objType["MAP"] = "MAP"; objType["SET"] = "SET"; objType["INSTANCE"] = "INSTANCE"; objType["MEMORY_SPACE"] = "MEMORY_SPACE"; objType["MEMORY_REGION"] = "MEMORY_REGION"; objType["MEMORY_CLAIM"] = "MEMORY_CLAIM"; objType["VARARGS"] = "VARARGS"; objType["TEMPLATE_ITEM"] = "TEMPLATE_ITEM"; objType["ACTION_HANDLE"] = "ACTION_HANDLE"; objType["ADDRESS_SPACE"] = "ADDRESS_SPACE"; objType["ADDRESS_REGION"] = "ADDRESS_REGION"; objType["ADDRESS_CLAIM"] = "ADDRESS_CLAIM"; objType["STRUCT_ITEM"] = "STRUCT_ITEM"; objType["EXEC_PRESOLVE"] = "EXEC_PRESOLVE"; objType["EXEC_POSTSOLVE"] = "EXEC_POSTSOLVE"; objType["EXEC_PREBODY"] = "EXEC_PREBODY"; objType["EXEC_BODY"] = "EXEC_BODY"; objType["EXEC_HEADER"] = "EXEC_HEADER"; objType["EXEC_DECLARATION"] = "EXEC_DECLARATION"; objType["EXEC_RUNSTART"] = "EXEC_RUNSTART"; objType["EXEC_RUNEND"] = "EXEC_RUNEND"; objType["EXEC_INITDOWN"] = "EXEC_INITDOWN"; objType["EXEC_INITUP"] = "EXEC_INITUP"; objType["EXEC_INIT"] = "EXEC_INIT"; objType["EXEC_TARGET"] = "EXEC_TARGET"; objType["EXEC_FILE"] = "EXEC_FILE"; objType["CALL_SUPER"] = "CALL_SUPER"; objType["IMPORT"] = "IMPORT"; objType["ASSIGNMENT"] = "ASSIGNMENT"; objType["UNKNOWN"] = "UNKNOWN"; })(objType || (exports.objType = objType = {})); /* Semantic Legend */ exports.semanticTokensLegend = { tokenTypes: [ "namespace", "type", "class", "enum", "interface", "struct", "typeParameter", "parameter", "variable", "property", "enumMember", "event", "function", "method", "macro", "keyword", "modifier", "comment", "string", "number", "regexp", "operator", "decorator" ], tokenModifiers: [ "declaration", "definition", "readonly", "static", "deprecated", "abstract", "async", "modification", "documentation", "defaultLibrary" ] }; /* Create a mapping for access type */ exports.accessMap = { "READONLY": "READONLY", "READWRITE": "READWRITE", "WRITEONLY": "WRITEONLY" }; /* Custom Request Method Types */ /* The first type is for client to send a line and the server to send a doxygen comment info for the first entity type it encounters. This excludes keywords but only has variable types, functions etc */ const RequestDoxygenGeneration = new vscode_languageserver_1.RequestType('dsp/RequestDoxygenGeneration'); exports.RequestDoxygenGeneration = RequestDoxygenGeneration;