ludic/examples/rejected/private_bank/ledger.ludic

15 lines
434 B
Text

# bank/ledger.ludic - inherits `module bank` from the barrel that imports it
export state BankState {
balance: int = 0
}
export event Deposited { amount: int }
function add(bank_st: mut BankState, n: int) -> void {
bank_st.balance += n
}
export function deposit(bank_st: mut BankState, n: int) -> void {
add(bank_st, n)
emit Deposited(amount: n)
}
export function total(bank_st: BankState) -> int {
return bank_st.balance
}