Files
codeql-action/lib/languages.js
T

53 lines
1.6 KiB
JavaScript
Raw Permalink Normal View History

2020-08-10 11:54:02 +01:00
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
2021-07-27 17:59:59 +01:00
exports.isScannedLanguage = exports.isTracedLanguage = exports.parseLanguage = exports.Language = void 0;
2020-08-10 11:54:02 +01:00
// All the languages supported by CodeQL
2020-08-17 13:34:34 +01:00
var Language;
(function (Language) {
Language["csharp"] = "csharp";
Language["cpp"] = "cpp";
Language["go"] = "go";
Language["java"] = "java";
Language["javascript"] = "javascript";
Language["python"] = "python";
2021-05-20 16:51:17 +02:00
Language["ruby"] = "ruby";
2022-05-27 15:34:41 +01:00
Language["swift"] = "swift";
2020-08-17 13:34:34 +01:00
})(Language = exports.Language || (exports.Language = {}));
2020-08-10 11:54:02 +01:00
// Additional names for languages
const LANGUAGE_ALIASES = {
2020-09-14 10:44:43 +01:00
c: Language.cpp,
"c++": Language.cpp,
"c#": Language.csharp,
2022-11-17 10:38:48 -08:00
kotlin: Language.java,
2020-09-14 10:44:43 +01:00
typescript: Language.javascript,
2020-08-10 11:54:02 +01:00
};
// Translate from user input or GitHub's API names for languages to CodeQL's names for languages
function parseLanguage(language) {
// Normalise to lower case
language = language.toLowerCase();
// See if it's an exact match
2020-08-17 13:34:34 +01:00
if (language in Language) {
return language;
2020-08-10 11:54:02 +01:00
}
// Check language aliases
if (language in LANGUAGE_ALIASES) {
return LANGUAGE_ALIASES[language];
}
return undefined;
}
exports.parseLanguage = parseLanguage;
function isTracedLanguage(language) {
return [
Language.cpp,
Language.csharp,
Language.go,
Language.java,
Language.swift,
].includes(language);
2020-08-10 11:54:02 +01:00
}
exports.isTracedLanguage = isTracedLanguage;
function isScannedLanguage(language) {
return !isTracedLanguage(language);
2020-08-10 11:54:02 +01:00
}
exports.isScannedLanguage = isScannedLanguage;
//# sourceMappingURL=languages.js.map