mirror of
https://github.com/microsoft/vscode.git
synced 2026-04-19 16:18:58 +01:00
* Mangle exported functions For #180461 This prototype tries to mangle exported functions, saving a further 440kb from the bundle size * Fix missing call * Also try mangling top level exported consts too * Fixing errors * Don't run on build files * Skip a few more manglings and revert change to namespace * Skip a few more monaco files * Also mangle consts that shadow types This increases savings up to 3325 * Also mangle exported classes * Skip mangling more localization functions for now * Opt out pfs * Update build script * Run find locations task in parallel This should speed up compile * Cleanup before close * Limit workers to avoid hitting memory limit * Limit pool size * Skip one more mangling * Exclude entrypoints from mangling * Try to fix web build and clean up code * Exempt a few more projects * Exempt another file * Also exempt html * Skip mangling ext entrypoints * Use prefix that can't be confused with rpc calls * Fix max call stack error * Switch prefixes * Don't mangle ambient declarations * Use correct way of checking modifier flags * Workaround getCombinedModifierFlags not doing what I'd expect Maybe needs the checker to be enabled too? Just check parent chain instead for now * Clean up code and add logic showing how enum mangling could work * Remove a few more skipMangles Use entrypoints instead * Fix entrypoint name
27 lines
981 B
TypeScript
27 lines
981 B
TypeScript
/*---------------------------------------------------------------------------------------------
|
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
*--------------------------------------------------------------------------------------------*/
|
|
|
|
import * as ts from 'typescript';
|
|
import * as workerpool from 'workerpool';
|
|
import { StaticLanguageServiceHost } from './staticLanguageServiceHost';
|
|
|
|
let service: ts.LanguageService | undefined;// = ts.createLanguageService(new StaticLanguageServiceHost(projectPath));
|
|
|
|
function findRenameLocations(
|
|
projectPath: string,
|
|
fileName: string,
|
|
position: number,
|
|
): readonly ts.RenameLocation[] {
|
|
if (!service) {
|
|
service = ts.createLanguageService(new StaticLanguageServiceHost(projectPath));
|
|
}
|
|
|
|
return service.findRenameLocations(fileName, position, false, false, true) ?? [];
|
|
}
|
|
|
|
workerpool.worker({
|
|
findRenameLocations
|
|
});
|