public function addCoupon(
        CartInterface $cart,
        CouponInterface $coupon
    ) {
        $this
            ->cartCouponEventDispatcher
            ->dispatchCartCouponOnApplyEvent(
                $cart,
                $coupon
            );

        return $this;
    }
public function addCoupon(
        CartInterface $cart,
        CouponInterface $coupon
    ) {
        $this
            ->cartCouponEventDispatcher
            ->dispatchCartCouponOnApplyEvent(
                $cart,
                $coupon
            );

        return $this;
    }
public function addCoupon ( CartInterface $ cart , CouponInterface $ coupon ) { $ this -> cartCouponEventDispatcher -> dispatchCartCouponOnApplyEvent ( $ cart , $ coupon ) ; return $ this ; }
Adds a Coupon to a Cart and recalculates the Cart Totals.

@param CartInterface   $cart   Cart
@param CouponInterface $coupon The coupon to add

@throws AbstractCouponException

@return $this Self object
Adds a Coupon to a Cart and recalculates the Cart Totals .