'Given a rule number and a start token index number, return
MEMO_RULE_UNKNOWN if the rule has not parsed input starting from
start index.  If this rule has parsed input starting from the
start index before, then return where the rule stopped parsing.
It returns the index of the last token matched by the rule.'

def getRuleMemoization(self, ruleIndex, ruleStartIndex):

    if (ruleIndex not in self._state.ruleMemo):
        self._state.ruleMemo[ruleIndex] = {}
    return self._state.ruleMemo[ruleIndex].get(ruleStartIndex, self.MEMO_RULE_UNKNOWN)
