1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
|
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
|
-
-
+
+
|
}
} else if (lDefault) {
dTokenPos.get(nPos)["lMorph"] = lDefault;
}
return true;
}
function define (dTokenPos, nPos, lMorph) {
dTokenPos.get(nPos)["lMorph"] = lMorph;
function define (dTokenPos, nPos, sMorphs) {
dTokenPos.get(nPos)["lMorph"] = sMorphs.split("|");
return true;
}
//// Disambiguation for graph rules
function g_select (oToken, sPattern, lDefault=null) {
|
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
|
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
|
-
+
-
+
-
+
-
+
|
}
} else if (lDefault) {
oToken["lMorph"] = lDefault;
}
return true;
}
function g_add_morph (oToken, lNewMorph) {
function g_add_morph (oToken, sNewMorph) {
"Disambiguation: add a morphology to a token"
let lMorph = (oToken.hasOwnProperty("lMorph")) ? oToken["lMorph"] : _oSpellChecker.getMorph(oToken["sValue"]);
lMorph.push(...lNewMorph);
lMorph.push(...sNewMorph.split("|"));
oToken["lMorph"] = lMorph;
return true;
}
function g_define (oToken, lMorph) {
function g_define (oToken, sMorphs) {
// set morphologies of <oToken>, always return true
oToken["lMorph"] = lMorph;
oToken["lMorph"] = sMorphs.split("|");
return true;
}
function g_define_from (oToken, nLeft=null, nRight=null) {
let sValue = oToken["sValue"];
if (nLeft !== null) {
sValue = (nRight !== null) ? sValue.slice(nLeft, nRight) : sValue.slice(nLeft);
|