use field type of a @:rule field as function return type