Skip to content

ConverterFlagsToken

bhsd edited this page Feb 12, 2024 · 11 revisions
目录

Other Languages

简介

转换类型标记。

✅ 在 MiniBrowser 版本中可用。

Properties

flags

展开

type: Set<string>
所有转换类型标记。

// flags
var flags = Parser.parse('-{H|}-').querySelector('converter-flags');
assert.deepStrictEqual(flags.flags, new Set(['H']));
flags.flags = new Set(['R']);
assert.equal(flags, 'R');

Methods

getUnknownFlags

✅ 展开

returns: Set<string>
获取未知的转换类型标记。

// getUnknownFlags
var flags = Parser.parse('-{{{{a}}}|}-').querySelector('converter-flags');
assert.deepStrictEqual(flags.getUnknownFlags(), new Set(['{{{a}}}']));

getVariantFlags

✅ 展开

returns: Set<string>
获取指定语言变体的转换标记。

// getVariantFlags
var flags = Parser.parse('-{zh-cn|}-').querySelector('converter-flags');
assert.deepStrictEqual(flags.getVariantFlags(), new Set(['zh-cn']));

lint

✅ 展开

returns: LintError[]
报告潜在语法错误。

// lint
var flags = Parser.parse('-{h|}-').querySelector('converter-flags');
assert.deepStrictEqual(flags.lint(), [
	{
		rule: 'no-ignored',
		severity: 'error',
		message: 'invalid conversion flag',
		startLine: 0,
		startCol: 2,
		startIndex: 2,
		endLine: 0,
		endCol: 3,
		endIndex: 3,
	},
]);

cloneNode

展开

returns: this
深拷贝节点。

// cloneNode
var flags = Parser.parse('-{}-').querySelector('converter-flags');
assert.deepStrictEqual(flags.cloneNode(), flags);

getAllFlags

展开

returns: Set<string>
获取所有转换类型标记。

// getAllFlags
var flags = Parser.parse('-{A|}-').querySelector('converter-flags');
assert.deepStrictEqual(flags.getAllFlags(), new Set(['A']));

getFlagTokens

展开

param: string 转换类型标记
returns: Token[]
获取转换类型标记节点。

// getFlagTokens
var flags = Parser.parse('-{A|}-').querySelector('converter-flags');
assert.deepStrictEqual(flags.getFlagTokens('A'), [flags.firstChild]);

getEffectiveFlags

展开

returns: Set<string>
获取有效的转换类型标记。

// getEffectiveFlags
var flags = Parser.parse('-{}-').querySelector('converter-flags');
assert.deepStrictEqual(flags.getEffectiveFlags(), new Set(['S']));

hasFlag

展开

param: string 转换类型标记
returns: boolean
是否具有某转换类型标记。

// hasFlag
var flags = Parser.parse('-{R|}-').querySelector('converter-flags');
assert(flags.hasFlag('R'));

hasEffectiveFlag

展开

param: string 转换类型标记
returns: boolean
是否具有某有效的转换类型标记。

// hasEffectiveFlag
var flags = Parser.parse('-{}-').querySelector('converter-flags');
assert(flags.hasEffectiveFlag('S'));

removeFlag

展开

param: string 转换类型标记
移除某转换类型标记。

// removeFlag
var flags = Parser.parse('-{R|}-').querySelector('converter-flags');
flags.removeFlag('R');
assert.equal(flags, '');

setFlag

展开

param: string 转换类型标记
添加转换类型标记。

// setFlag
var flags = Parser.parse('-{}-').querySelector('converter-flags');
flags.setFlag('R');
assert.equal(flags, 'R');

toggleFlag

展开

param: string 转换类型标记
开关转换类型标记。

// toggleFlag
var flags = Parser.parse('-{R|}-').querySelector('converter-flags');
flags.toggleFlag('R');
flags.toggleFlag('D');
assert.equal(flags, 'D');
Clone this wiki locally