Skip to content

Commit 900d58b

Browse files
author
Benjamin Pasero
committed
debt - declare more services via registerSingleton()
1 parent 4585f69 commit 900d58b

19 files changed

Lines changed: 148 additions & 137 deletions

File tree

src/vs/base/common/path.ts

Lines changed: 17 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
* USE OR OTHER DEALINGS IN THE SOFTWARE.
3030
*/
3131

32-
import { isWindows } from 'vs/base/common/platform';
32+
import * as process from 'vs/base/common/process';
3333

3434
const CHAR_UPPERCASE_A = 65;/* A */
3535
const CHAR_LOWERCASE_A = 97; /* a */
@@ -41,19 +41,6 @@ const CHAR_BACKWARD_SLASH = 92; /* \ */
4141
const CHAR_COLON = 58; /* : */
4242
const CHAR_QUESTION_MARK = 63; /* ? */
4343

44-
interface IProcess {
45-
cwd(): string;
46-
platform: string;
47-
env: object;
48-
}
49-
50-
declare let process: IProcess;
51-
const safeProcess: IProcess = (typeof process === 'undefined') ? {
52-
cwd() { return '/'; },
53-
env: {},
54-
get platform() { return isWindows ? 'win32' : 'posix'; }
55-
} : process;
56-
5744
class ErrorInvalidArgType extends Error {
5845
code: 'ERR_INVALID_ARG_TYPE';
5946
constructor(name: string, expected: string, actual: string) {
@@ -219,14 +206,14 @@ export const win32: IPath = {
219206
if (i >= 0) {
220207
path = pathSegments[i];
221208
} else if (!resolvedDevice) {
222-
path = safeProcess.cwd();
209+
path = process.cwd();
223210
} else {
224211
// Windows has the concept of drive-specific current working
225212
// directories. If we've resolved a drive letter but not yet an
226213
// absolute path, get cwd for that drive, or the process cwd if
227214
// the drive cwd is not available. We're sure the device is not
228215
// a UNC path at this points, because UNC paths are always absolute.
229-
path = safeProcess.env['=' + resolvedDevice] || safeProcess.cwd();
216+
path = process.env['=' + resolvedDevice] || process.cwd();
230217

231218
// Verify that a cwd was found and that it actually points
232219
// to our drive. If not, default to the drive's root.
@@ -1208,7 +1195,7 @@ export const posix: IPath = {
12081195
path = pathSegments[i];
12091196
}
12101197
else {
1211-
path = safeProcess.cwd();
1198+
path = process.cwd();
12121199
}
12131200

12141201
validateString(path, 'path');
@@ -1682,16 +1669,16 @@ export const posix: IPath = {
16821669
posix.win32 = win32.win32 = win32;
16831670
posix.posix = win32.posix = posix;
16841671

1685-
export const normalize = (safeProcess.platform === 'win32' ? win32.normalize : posix.normalize);
1686-
export const isAbsolute = (safeProcess.platform === 'win32' ? win32.isAbsolute : posix.isAbsolute);
1687-
export const join = (safeProcess.platform === 'win32' ? win32.join : posix.join);
1688-
export const resolve = (safeProcess.platform === 'win32' ? win32.resolve : posix.resolve);
1689-
export const relative = (safeProcess.platform === 'win32' ? win32.relative : posix.relative);
1690-
export const dirname = (safeProcess.platform === 'win32' ? win32.dirname : posix.dirname);
1691-
export const basename = (safeProcess.platform === 'win32' ? win32.basename : posix.basename);
1692-
export const extname = (safeProcess.platform === 'win32' ? win32.extname : posix.extname);
1693-
export const format = (safeProcess.platform === 'win32' ? win32.format : posix.format);
1694-
export const parse = (safeProcess.platform === 'win32' ? win32.parse : posix.parse);
1695-
export const toNamespacedPath = (safeProcess.platform === 'win32' ? win32.toNamespacedPath : posix.toNamespacedPath);
1696-
export const sep = (safeProcess.platform === 'win32' ? win32.sep : posix.sep);
1697-
export const delimiter = (safeProcess.platform === 'win32' ? win32.delimiter : posix.delimiter);
1672+
export const normalize = (process.platform === 'win32' ? win32.normalize : posix.normalize);
1673+
export const isAbsolute = (process.platform === 'win32' ? win32.isAbsolute : posix.isAbsolute);
1674+
export const join = (process.platform === 'win32' ? win32.join : posix.join);
1675+
export const resolve = (process.platform === 'win32' ? win32.resolve : posix.resolve);
1676+
export const relative = (process.platform === 'win32' ? win32.relative : posix.relative);
1677+
export const dirname = (process.platform === 'win32' ? win32.dirname : posix.dirname);
1678+
export const basename = (process.platform === 'win32' ? win32.basename : posix.basename);
1679+
export const extname = (process.platform === 'win32' ? win32.extname : posix.extname);
1680+
export const format = (process.platform === 'win32' ? win32.format : posix.format);
1681+
export const parse = (process.platform === 'win32' ? win32.parse : posix.parse);
1682+
export const toNamespacedPath = (process.platform === 'win32' ? win32.toNamespacedPath : posix.toNamespacedPath);
1683+
export const sep = (process.platform === 'win32' ? win32.sep : posix.sep);
1684+
export const delimiter = (process.platform === 'win32' ? win32.delimiter : posix.delimiter);

src/vs/base/common/process.ts

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
/*---------------------------------------------------------------------------------------------
2+
* Copyright (c) Microsoft Corporation. All rights reserved.
3+
* Licensed under the MIT License. See License.txt in the project root for license information.
4+
*--------------------------------------------------------------------------------------------*/
5+
6+
import { isWindows, isMacintosh, setImmediate } from 'vs/base/common/platform';
7+
8+
interface IProcess {
9+
platform: string;
10+
env: object;
11+
12+
cwd(): string;
13+
nextTick(callback: (...args: any[]) => void): number;
14+
}
15+
16+
declare let process: IProcess;
17+
const safeProcess: IProcess = (typeof process === 'undefined') ? {
18+
cwd(): string { return '/'; },
19+
env: Object.create(null),
20+
get platform(): string { return isWindows ? 'win32' : isMacintosh ? 'darwin' : 'linux'; },
21+
nextTick(callback: (...args: any[]) => void): number { return setImmediate(callback); }
22+
} : process;
23+
24+
export const cwd = safeProcess.cwd;
25+
export const env = safeProcess.env;
26+
export const platform = safeProcess.platform;
27+
export const nextTick = safeProcess.nextTick;

src/vs/workbench/api/node/extHostDebugService.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -909,7 +909,7 @@ export class ExtHostVariableResolverService extends AbstractVariableResolverServ
909909
}
910910
return undefined;
911911
}
912-
});
912+
}, process.env);
913913
}
914914
}
915915

src/vs/workbench/contrib/codeEditor/browser/selectionClipboard.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
import { RunOnceScheduler } from 'vs/base/common/async';
77
import { Disposable } from 'vs/base/common/lifecycle';
8+
import * as process from 'vs/base/common/process';
89
import * as platform from 'vs/base/common/platform';
910
import { ICodeEditor, IEditorMouseEvent, MouseTargetType } from 'vs/editor/browser/editorBrowser';
1011
import { registerEditorContribution } from 'vs/editor/browser/editorExtensions';

src/vs/workbench/contrib/codeinset/electron-browser/codeInset.contribution.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -309,7 +309,7 @@ export class CodeInsetController implements editorCommon.IEditorContribution {
309309

310310
const widgetPromises = widgetRequests.map(request => {
311311
if (request.resolved) {
312-
return Promise.resolve(void 0);
312+
return Promise.resolve(undefined);
313313
}
314314
let a = new Promise(resolve => {
315315
this._pendingWebviews.set(request.symbol.id, element => {

0 commit comments

Comments
 (0)