Argument matcher trait