Slide 75
Slide 75 text
75
export class CartItemList {
private constructor (private readonly cartItems: CartItem[]) { }
// (中略)
onlyWillPurchase (): CartItemList {
return this.filterInner(cartItem => cartItem.state.willPurchase)
}
add (item: Item): CartItemList {
// 省略
}
remove (item: Item): CartItemList {
return this.filter(itemInCart => itemInCart.id !== item.id)
}
buyLater (item: Item): CartItemList {
return this.changeState(item, {
willPurchase: false
})
}
// 省略
}