support for :function /pattern