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


TypeScript LineTokens.getLineContent方法代碼示例

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


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

示例1: createScopedLineTokens

export function createScopedLineTokens(context: LineTokens, offset: number): ScopedLineTokens {
	let modeTransitions = context.modeTransitions;
	if (modeTransitions.length === 1) {
		return new ScopedLineTokens(context, modeTransitions[0].modeId, 0, context.getTokenCount(), 0, context.getLineContent().length);
	}

	let modeIndex = ModeTransition.findIndexInSegmentsArray(modeTransitions, offset);
	let nestedModeId = modeTransitions[modeIndex].modeId;
	let modeStartIndex = modeTransitions[modeIndex].startIndex;

	let firstTokenIndex = context.findTokenIndexAtOffset(modeStartIndex);
	let lastCharOffset = -1;
	let lastTokenIndex = -1;
	if (modeIndex + 1 < modeTransitions.length) {
		lastTokenIndex = context.findTokenIndexAtOffset(modeTransitions[modeIndex + 1].startIndex);
		lastCharOffset = context.getTokenStartOffset(lastTokenIndex);
	} else {
		lastTokenIndex = context.getTokenCount();
		lastCharOffset = context.getLineContent().length;
	}

	let firstCharOffset = context.getTokenStartOffset(firstTokenIndex);
	return new ScopedLineTokens(context, nestedModeId, firstTokenIndex, lastTokenIndex, firstCharOffset, lastCharOffset);
}
開發者ID:StateFarmIns,項目名稱:vscode,代碼行數:24,代碼來源:supports.ts

示例2: assertLineTokens

function assertLineTokens(__actual: LineTokens, _expected: TestToken[]): void {
	let tmp = TestToken.toTokens(_expected);
	LineTokens.convertToEndOffset(tmp, __actual.getLineContent().length);
	let expected = ViewLineTokenFactory.inflateArr(tmp);
	let _actual = __actual.inflate();
	interface ITestToken {
		endIndex: number;
		type: string;
	}
	let actual: ITestToken[] = [];
	for (let i = 0, len = _actual.getCount(); i < len; i++) {
		actual[i] = {
			endIndex: _actual.getEndOffset(i),
			type: _actual.getClassName(i)
		};
	}
	let decode = (token: ViewLineToken) => {
		return {
			endIndex: token.endIndex,
			type: token.getType()
		};
	};
	assert.deepEqual(actual, expected.map(decode));
}
開發者ID:burhandodhy,項目名稱:azuredatastudio,代碼行數:24,代碼來源:model.line.test.ts

示例3: getLineContent

	public getLineContent(): string {
		const actualLineContent = this._actual.getLineContent();
		return actualLineContent.substring(this.firstCharOffset, this._lastCharOffset);
	}
開發者ID:KTXSoftware,項目名稱:KodeStudio,代碼行數:4,代碼來源:supports.ts

示例4: assertLineTokens

function assertLineTokens(_actual: LineTokens, _expected: TestToken[]): void {
	let expected = ViewLineTokenFactory.inflateArr(TestToken.toTokens(_expected), _actual.getLineContent().length);
	let actual = _actual.inflate();
	let decode = (token: ViewLineToken) => {
		return {
			endIndex: token.endIndex,
			type: token.getType()
		};
	};
	assert.deepEqual(actual.map(decode), expected.map(decode));
}
開發者ID:AlexxNica,項目名稱:sqlopsstudio,代碼行數:11,代碼來源:model.line.test.ts


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