protected void addRulesDerivingPendingNonTerminal(RuleStateItem item, String nonterm, Syntax syntax, List todo)	{
		// make the closure for one item:
		// if pointer before a nonterminal, add all rules that derive it
		for (int i = 0; i < syntax.size(); i++)	{
			Rule rule = syntax.getRule(i);
			
			if (rule.getNonterminal().equals(nonterm))	{
				RuleStateItem rsi = createRuleStateItem(i, rule);

				if (entries.containsKey(rsi) == false)	{
					entries.put(rsi, rsi);	// real entry list
					todo.add(rsi);	// work list
				}
			}
		}
	}