Erlang records with both type and value restrictions as well as default values
default-value, erlang, records, restrictions, types
Solution
Something like `balance = 0 :: 0 | pos_integer()` might do the trick.
edit wasn't sure it existed, but `non_neg_integer()` would be better :
balance = 0 :: non_neg_integer()
Problem
I am trying to write a record which represents a bank account: ``` -record(account, { name :: atom(), type :: atom(), balance = 0 :: integer() }). ``` I also want to restrict the balance to always be `>= 0`. How do I do this?