本文整理汇总了TypeScript中vs/editor/common/viewLayout/viewLineRenderer.CharacterMapping类的典型用法代码示例。如果您正苦于以下问题:TypeScript CharacterMapping类的具体用法?TypeScript CharacterMapping怎么用?TypeScript CharacterMapping使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了CharacterMapping类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: assertCharPartOffsets
function assertCharPartOffsets(actual: CharacterMapping, expected: number[][]): void {
let charOffset = 0;
for (let partIndex = 0; partIndex < expected.length; partIndex++) {
let part = expected[partIndex];
for (let i = 0; i < part.length; i++) {
let charIndex = part[i];
// here
let _actualPartData = actual.charOffsetToPartData(charOffset);
let actualPartIndex = CharacterMapping.getPartIndex(_actualPartData);
let actualCharIndex = CharacterMapping.getCharIndex(_actualPartData);
assert.deepEqual(
{ partIndex: actualPartIndex, charIndex: actualCharIndex },
{ partIndex: partIndex, charIndex: charIndex },
`character mapping for offset ${charOffset}`
);
// here
let actualOffset = actual.partDataToCharOffset(partIndex, part[part.length - 1] + 1, charIndex);
assert.equal(
actualOffset,
charOffset,
`character mapping for part ${partIndex}, ${charIndex}`
);
charOffset++;
}
}
assert.equal(actual.length, charOffset);
}
示例2: assertPartLengths
function assertPartLengths(actual: CharacterMapping, expected: number[]): void {
let _partLengths = actual.getPartLengths();
let actualLengths: number[] = [];
for (let i = 0; i < _partLengths.length; i++) {
actualLengths[i] = _partLengths[i];
}
assert.deepEqual(actualLengths, expected, 'part lengths OK');
}
示例3: assertCharacterMapping
function assertCharacterMapping(actual: CharacterMapping, expectedCharPartOffsets: number[][], expectedPartLengths: number[]): void {
assertCharPartOffsets(actual, expectedCharPartOffsets);
let expectedCharAbsoluteOffset: number[] = [], currentPartAbsoluteOffset = 0;
for (let partIndex = 0; partIndex < expectedCharPartOffsets.length; partIndex++) {
const part = expectedCharPartOffsets[partIndex];
for (let i = 0; i < part.length; i++) {
const charIndex = part[i];
expectedCharAbsoluteOffset.push(currentPartAbsoluteOffset + charIndex);
}
currentPartAbsoluteOffset += expectedPartLengths[partIndex];
}
let actualCharOffset: number[] = [];
let tmp = actual.getAbsoluteOffsets();
for (let i = 0; i < tmp.length; i++) {
actualCharOffset[i] = tmp[i];
}
assert.deepEqual(actualCharOffset, expectedCharAbsoluteOffset);
}