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


TypeScript indentRangeProvider.computeRanges函數代碼示例

本文整理匯總了TypeScript中vs/editor/contrib/folding/indentRangeProvider.computeRanges函數的典型用法代碼示例。如果您正苦於以下問題:TypeScript computeRanges函數的具體用法?TypeScript computeRanges怎麽用?TypeScript computeRanges使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


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

示例1: assertLimit

		function assertLimit(maxEntries: number, expectedRanges: IndentRange[], message: string) {
			let indentRanges = computeRanges(model, true, null, maxEntries);
			assert.ok(indentRanges.length <= maxEntries, 'max ' + message);
			let actual = [];
			for (let i = 0; i < indentRanges.length; i++) {
				actual.push({ start: indentRanges.getStartLineNumber(i), end: indentRanges.getEndLineNumber(i) });
			}
			assert.deepEqual(actual, expectedRanges, message);
		}
開發者ID:developers23,項目名稱:vscode,代碼行數:9,代碼來源:indentFold.test.ts

示例2: assertLimit

		function assertLimit(maxEntries: number, expectedRanges: IndentRange[], message: string) {
			let indentRanges = computeRanges(model, true, null, maxEntries);
			assert.ok(indentRanges.length <= maxEntries, 'max ' + message);
			assert.equal(indentRanges.length, expectedRanges.length, 'len ' + message);
			for (let i = 0; i < expectedRanges.length; i++) {
				assert.equal(indentRanges.getStartLineNumber(i), expectedRanges[i].startLineNumber, 'start ' + message);
				assert.equal(indentRanges.getEndLineNumber(i), expectedRanges[i].endLineNumber, 'end ' + message);
			}
		}
開發者ID:AlexxNica,項目名稱:sqlopsstudio,代碼行數:9,代碼來源:indentFold.test.ts

示例3: assertRanges

function assertRanges(lines: string[], expected: ExpectedIndentRange[], offside: boolean, markers?: FoldingMarkers): void {
	let model = TextModel.createFromString(lines.join('\n'));
	let actual = computeRanges(model, offside, markers);

	let actualRanges = [];
	for (let i = 0; i < actual.length; i++) {
		actualRanges[i] = r(actual.getStartLineNumber(i), actual.getEndLineNumber(i), actual.getParentIndex(i));
	}
	assert.deepEqual(actualRanges, expected);
	model.dispose();
}
開發者ID:AllureFer,項目名稱:vscode,代碼行數:11,代碼來源:indentRangeProvider.test.ts

示例4: test

	test('findRange', () => {
		let lines = [
		/* 1*/	'#region',
		/* 2*/	'#endregion',
		/* 3*/	'class A {',
		/* 4*/	'  void foo() {',
		/* 5*/	'    if (true) {',
		/* 6*/	'        return;',
		/* 7*/	'    }',
		/* 8*/	'',
		/* 9*/	'    if (true) {',
		/* 10*/	'      return;',
		/* 11*/	'    }',
		/* 12*/	'  }',
		/* 13*/	'}'];

		let textModel = TextModel.createFromString(lines.join('\n'));
		try {
			let actual = computeRanges(textModel, false, markers);
			// let r0 = r(1, 2);
			// let r1 = r(3, 12);
			// let r2 = r(4, 11);
			// let r3 = r(5, 6);
			// let r4 = r(9, 10);

			assert.equal(actual.findRange(1), 0, '1');
			assert.equal(actual.findRange(2), 0, '2');
			assert.equal(actual.findRange(3), 1, '3');
			assert.equal(actual.findRange(4), 2, '4');
			assert.equal(actual.findRange(5), 3, '5');
			assert.equal(actual.findRange(6), 3, '6');
			assert.equal(actual.findRange(7), 2, '7');
			assert.equal(actual.findRange(8), 2, '8');
			assert.equal(actual.findRange(9), 4, '9');
			assert.equal(actual.findRange(10), 4, '10');
			assert.equal(actual.findRange(11), 2, '11');
			assert.equal(actual.findRange(12), 1, '12');
			assert.equal(actual.findRange(13), -1, '13');
		} finally {
			textModel.dispose();
		}


	});
開發者ID:burhandodhy,項目名稱:azuredatastudio,代碼行數:44,代碼來源:foldingRanges.test.ts

示例5: test

	test('hasRanges', () => {
		let lines = [
		/* 1*/	'/**',
		/* 2*/	' * Comment',
		/* 3*/	' */',
		/* 4*/	'class A {',
		/* 5*/	'  void foo() {',
		/* 6*/	'    if (true) {',
		/* 7*/	'      //hello',
		/* 8*/	'    }',
		/* 9*/	'  }',
		/* 10*/	'}'];

		let textModel = TextModel.createFromString(lines.join('\n'));
		let foldingModel = new FoldingModel(textModel, new TestDecorationProvider(textModel));
		let hiddenRangeModel = new HiddenRangeModel(foldingModel);

		assert.equal(hiddenRangeModel.hasRanges(), false);

		let ranges = computeRanges(textModel, false, void 0);
		foldingModel.update(ranges);

		foldingModel.toggleCollapseState([foldingModel.getRegionAtLine(1)!, foldingModel.getRegionAtLine(6)!]);
		assertRanges(hiddenRangeModel.hiddenRanges, [r(2, 3), r(7, 7)]);

		assert.equal(hiddenRangeModel.hasRanges(), true);
		assert.equal(hiddenRangeModel.isHidden(1), false);
		assert.equal(hiddenRangeModel.isHidden(2), true);
		assert.equal(hiddenRangeModel.isHidden(3), true);
		assert.equal(hiddenRangeModel.isHidden(4), false);
		assert.equal(hiddenRangeModel.isHidden(5), false);
		assert.equal(hiddenRangeModel.isHidden(6), false);
		assert.equal(hiddenRangeModel.isHidden(7), true);
		assert.equal(hiddenRangeModel.isHidden(8), false);
		assert.equal(hiddenRangeModel.isHidden(9), false);
		assert.equal(hiddenRangeModel.isHidden(10), false);

		foldingModel.toggleCollapseState([foldingModel.getRegionAtLine(4)!]);
		assertRanges(hiddenRangeModel.hiddenRanges, [r(2, 3), r(5, 9)]);

		assert.equal(hiddenRangeModel.hasRanges(), true);
		assert.equal(hiddenRangeModel.isHidden(1), false);
		assert.equal(hiddenRangeModel.isHidden(2), true);
		assert.equal(hiddenRangeModel.isHidden(3), true);
		assert.equal(hiddenRangeModel.isHidden(4), false);
		assert.equal(hiddenRangeModel.isHidden(5), true);
		assert.equal(hiddenRangeModel.isHidden(6), true);
		assert.equal(hiddenRangeModel.isHidden(7), true);
		assert.equal(hiddenRangeModel.isHidden(8), true);
		assert.equal(hiddenRangeModel.isHidden(9), true);
		assert.equal(hiddenRangeModel.isHidden(10), false);

		foldingModel.toggleCollapseState([foldingModel.getRegionAtLine(1)!, foldingModel.getRegionAtLine(6)!, foldingModel.getRegionAtLine(4)!]);
		assertRanges(hiddenRangeModel.hiddenRanges, []);
		assert.equal(hiddenRangeModel.hasRanges(), false);
		assert.equal(hiddenRangeModel.isHidden(1), false);
		assert.equal(hiddenRangeModel.isHidden(2), false);
		assert.equal(hiddenRangeModel.isHidden(3), false);
		assert.equal(hiddenRangeModel.isHidden(4), false);
		assert.equal(hiddenRangeModel.isHidden(5), false);
		assert.equal(hiddenRangeModel.isHidden(6), false);
		assert.equal(hiddenRangeModel.isHidden(7), false);
		assert.equal(hiddenRangeModel.isHidden(8), false);
		assert.equal(hiddenRangeModel.isHidden(9), false);
		assert.equal(hiddenRangeModel.isHidden(10), false);

	});
開發者ID:DonJayamanne,項目名稱:vscode,代碼行數:67,代碼來源:hiddenRangeModel.test.ts


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