當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript WorkspaceEdit.replace方法代碼示例

本文整理匯總了TypeScript中vs/workbench/api/common/extHostTypes.WorkspaceEdit.replace方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript WorkspaceEdit.replace方法的具體用法?TypeScript WorkspaceEdit.replace怎麽用?TypeScript WorkspaceEdit.replace使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在vs/workbench/api/common/extHostTypes.WorkspaceEdit的用法示例。


在下文中一共展示了WorkspaceEdit.replace方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: test

	test('WorkspaceEdit - keep order of text and file changes', function () {

		const edit = new types.WorkspaceEdit();
		edit.replace(URI.parse('foo:a'), new types.Range(1, 1, 1, 1), 'foo');
		edit.renameFile(URI.parse('foo:a'), URI.parse('foo:b'));
		edit.replace(URI.parse('foo:a'), new types.Range(2, 1, 2, 1), 'bar');
		edit.replace(URI.parse('foo:b'), new types.Range(3, 1, 3, 1), 'bazz');

		const all = edit._allEntries();
		assert.equal(all.length, 4);

		function isFileChange(thing: [URI, types.TextEdit[]] | [URI?, URI?, { overwrite?: boolean }?]): thing is [URI?, URI?, { overwrite?: boolean }?] {
			const [f, s] = thing;
			return URI.isUri(f) && URI.isUri(s);
		}

		function isTextChange(thing: [URI, types.TextEdit[]] | [URI?, URI?, { overwrite?: boolean }?]): thing is [URI, types.TextEdit[]] {
			const [f, s] = thing;
			return URI.isUri(f) && Array.isArray(s);
		}

		const [first, second, third, fourth] = all;
		assert.equal(first[0]!.toString(), 'foo:a');
		assert.ok(!isFileChange(first));
		assert.ok(isTextChange(first) && first[1].length === 1);

		assert.equal(second[0]!.toString(), 'foo:a');
		assert.ok(isFileChange(second));

		assert.equal(third[0]!.toString(), 'foo:a');
		assert.ok(isTextChange(third) && third[1].length === 1);

		assert.equal(fourth[0]!.toString(), 'foo:b');
		assert.ok(!isFileChange(fourth));
		assert.ok(isTextChange(fourth) && fourth[1].length === 1);
	});
開發者ID:eamodio,項目名稱:vscode,代碼行數:36,代碼來源:extHostTypes.test.ts


注:本文中的vs/workbench/api/common/extHostTypes.WorkspaceEdit.replace方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。