Money.Subscription.Plan.new
You're seeing just the function
new, go back to Money.Subscription.Plan module for more information.
Specs
Returns {:ok, Money.Subscription.Plan.t} or an {:error, reason}
tuple.
Arguments
:priceis anyMoney.t:intervalis the period of the plan. The valid intervals are:day,:week,:monthor ':year.:interval_countis an integer count of the number of:intervals of the plan. The default is1
Returns
A Money.Subscription.Plan.t
Examples
iex> Money.Subscription.Plan.new Money.new(:USD, 100), :month, 1
{:ok,
%Money.Subscription.Plan{
interval: :month,
interval_count: 1,
price: Money.new(:USD, 100)
}}
iex> Money.Subscription.Plan.new Money.new(:USD, 100), :month
{:ok,
%Money.Subscription.Plan{
interval: :month,
interval_count: 1,
price: Money.new(:USD, 100)
}}
iex> Money.Subscription.Plan.new Money.new(:USD, 100), :day, 30
{:ok,
%Money.Subscription.Plan{
interval: :day,
interval_count: 30,
price: Money.new(:USD, 100)
}}
iex> Money.Subscription.Plan.new 23, :day, 30
{:error, {Money.Invalid, "Invalid subscription plan definition"}}