ConverterFlagsToken - bhsd-harry/wikiparser-node GitHub Wiki
目录
转换类型标记。这个类继承了 Token 类的全部属性和方法,这里不再列出。
展开
type: Set<string>
所有转换类型标记。
// flags (main)
var flags = Parser.parse("-{H|}-").querySelector("converter-flags");
assert.deepStrictEqual(flags.flags, new Set(["H"]));
flags.flags = new Set(["R"]);
assert.equal(flags, "R");✅ 展开
returns: Set<string>
获取未知的转换类型标记。
// getUnknownFlags
var flags = Parser.parse("-{{{{a}}}|}-").querySelector("converter-flags");
assert.deepStrictEqual(flags.getUnknownFlags(), new Set(["{{{a}}}"]));✅ 展开
returns: Set<string>
获取指定语言变体的转换标记。
// getVariantFlags
var flags = Parser.parse("-{zh-cn|}-").querySelector("converter-flags");
assert.deepStrictEqual(flags.getVariantFlags(), new Set(["zh-cn"]));✅ 展开
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,
fix: {
range: [2, 3],
text: "H",
desc: "uppercase",
},
},
]);展开
returns: this
深拷贝节点。
// cloneNode (main)
var flags = Parser.parse("-{}-").querySelector("converter-flags");
assert.deepStrictEqual(flags.cloneNode(), flags);展开
returns: Set<string>
获取所有转换类型标记。
// getAllFlags (main)
var flags = Parser.parse("-{A|}-").querySelector("converter-flags");
assert.deepStrictEqual(flags.getAllFlags(), new Set(["A"]));展开
param: string 转换类型标记
returns: Token[]
获取转换类型标记节点。
// getFlagTokens (main)
var flags = Parser.parse("-{A|}-").querySelector("converter-flags");
assert.deepStrictEqual(flags.getFlagTokens("A"), [flags.firstChild]);展开
returns: Set<string>
获取有效的转换类型标记。
// getEffectiveFlags (main)
var flags = Parser.parse("-{}-").querySelector("converter-flags");
assert.deepStrictEqual(flags.getEffectiveFlags(), new Set(["S"]));展开
param: string 转换类型标记
returns: boolean
是否具有某转换类型标记。
// hasFlag (main)
var flags = Parser.parse("-{R|}-").querySelector("converter-flags");
assert.ok(flags.hasFlag("R"));
flags.firstChild.replaceChildren("H");
assert.ok(!flags.hasFlag("R"));
assert.ok(flags.hasFlag("H"));展开
param: string 转换类型标记
returns: boolean
是否具有某有效的转换类型标记。
// hasEffectiveFlag (main)
var flags = Parser.parse("-{}-").querySelector("converter-flags");
assert.ok(flags.hasEffectiveFlag("S"));展开
param: string 转换类型标记
移除某转换类型标记。
// removeFlag (main)
var flags = Parser.parse("-{R|}-").querySelector("converter-flags");
flags.removeFlag("R");
assert.equal(flags, "");展开
param: string 转换类型标记
添加转换类型标记。
// setFlag (main)
var flags = Parser.parse("-{}-").querySelector("converter-flags");
flags.setFlag("R");
assert.equal(flags, "R");展开
param: string 转换类型标记
开关转换类型标记。
// toggleFlag (main)
var flags = Parser.parse("-{R|}-").querySelector("converter-flags");
flags.toggleFlag("R");
flags.toggleFlag("D");
assert.equal(flags, "D");