update consume operator
fix #39 add Supplier support