add ExtendMatch() to simplify visitRuleset()