| failed = 1; | failed = 1; | ||||
| break; | break; | ||||
| case RULE_DOLLAR: | case RULE_DOLLAR: | ||||
| post_ptr--; | |||||
| command = *rule++; | command = *rule++; | ||||
| if (command == DOLLAR_UNPR) | if (command == DOLLAR_UNPR) | ||||
| match.end_type = SUFX_UNPRON; // $unpron | match.end_type = SUFX_UNPRON; // $unpron | ||||
| } | } | ||||
| break; | break; | ||||
| case RULE_INC_SCORE: | case RULE_INC_SCORE: | ||||
| post_ptr--; | |||||
| add_points = 20; // force an increase in points | add_points = 20; // force an increase in points | ||||
| break; | break; | ||||
| case RULE_DEC_SCORE: | case RULE_DEC_SCORE: | ||||
| post_ptr--; | |||||
| add_points = -20; // force an decrease in points | add_points = -20; // force an decrease in points | ||||
| break; | break; | ||||
| case RULE_DEL_FWD: | case RULE_DEL_FWD: | ||||
| case RULE_NO_SUFFIX: | case RULE_NO_SUFFIX: | ||||
| if (word_flags & FLAG_SUFFIX_REMOVED) | if (word_flags & FLAG_SUFFIX_REMOVED) | ||||
| failed = 1; // a suffix has been removed | failed = 1; // a suffix has been removed | ||||
| else | |||||
| else { | |||||
| post_ptr--; | |||||
| add_points = 1; | add_points = 1; | ||||
| } | |||||
| break; | break; | ||||
| default: | default: | ||||
| if (letter == rb) { | if (letter == rb) { | ||||
| failed = 1; | failed = 1; | ||||
| break; | break; | ||||
| case RULE_DOLLAR: | case RULE_DOLLAR: | ||||
| pre_ptr++; | |||||
| command = *rule++; | command = *rule++; | ||||
| if ((command == DOLLAR_LIST) || ((command & 0xf0) == 0x20)) { | if ((command == DOLLAR_LIST) || ((command & 0xf0) == 0x20)) { | ||||
| // $list or $p_alt | // $list or $p_alt | ||||
| failed = 1; | failed = 1; | ||||
| break; | break; | ||||
| case RULE_STRESSED: | case RULE_STRESSED: | ||||
| pre_ptr++; | |||||
| if (tr->word_stressed_count > 0) | if (tr->word_stressed_count > 0) | ||||
| add_points = 19; | add_points = 19; | ||||
| else | else | ||||
| } | } | ||||
| break; | break; | ||||
| case RULE_IFVERB: | case RULE_IFVERB: | ||||
| pre_ptr++; | |||||
| if (tr->expect_verb) | if (tr->expect_verb) | ||||
| add_points = 1; | add_points = 1; | ||||
| else | else | ||||
| failed = 1; | failed = 1; | ||||
| break; | break; | ||||
| case RULE_CAPITAL: | case RULE_CAPITAL: | ||||
| pre_ptr++; | |||||
| if (word_flags & FLAG_FIRST_UPPER) | if (word_flags & FLAG_FIRST_UPPER) | ||||
| add_points = 1; | add_points = 1; | ||||
| else | else |