This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function tokenProxy (const action : tokenAction; const store : store): operation is | |
block { | |
const tokenContract: contract (tokenAction) = | |
case (Tezos.get_contract_opt (store.token.contractAddress) : option (contract (tokenAction))) of | |
Some (contractAction) -> contractAction | |
| None -> (failwith ("Contract not found.") : contract (tokenAction)) | |
end; | |
const proxyOperation : operation = Tezos.transaction (action, 0mutez, tokenContract); | |
} with proxyOperation; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function depositImp(var store: store): return is | |
block { | |
if amount = 0mutez | |
then failwith("No tez transferred!"); | |
else skip; | |
// Setting the deposit to the sender | |
store := updateDeposit(amount, store); | |
// TODO: try to get the decimals property from the token contract |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// This is an implementation of the FA1.2 specification in PascaLIGO | |
type amountNat is nat; | |
type account is record | |
balance : amountNat; | |
allowances: map(address, amountNat); | |
end | |
type action is |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
type action is AddOwner of (address) | |
// An unordered collections of owner accounts | |
type store is record | |
owners: set(address); | |
end | |
type return is list(operation) * store | |
// Function that checks if an account is an owner |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Allowed roles, you can add a new annotation right here, for example 'Dev' or 'Moderator' | |
type role is Admin | User | NoRole | |
type action is | |
| MakeAdmin of (address) | |
| MakeUser of (address) | |
| RemoveRole of (address) | |
type store is record | |
users: big_map(address, role); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
if amount =/= 0tz then failwith ("This contract do not accept token amount"); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const emptyOps : list(operation) = list end; | |
function approve (const addressSpender : address; const value : nat; var store : store) : return is | |
block { | |
// If sender is the spender approving is not necessary | |
if sender = addressSpender then skip; | |
else block { | |
const senderAccount: account = getAccount(sender, store.accounts); | |
var allowance: nat := getAllowance(addressSpender, senderAccount.allowances); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Error codes used with the `failwith` method , for contract execution termination. | |
const error_not_enough_balance : string = "0"; | |
const error_transaction_of_funds_failed : string = "1"; | |
const error_amount_must_be_zero : string = "3"; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"mnemonic": [ | |
"pepper", | |
"elbow", | |
"pizza", | |
"best", | |
"speak", | |
"usual", | |
"mass", | |
"pepper", |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"mnemonic": [ | |
"essence", | |
"crucial", | |
"useful", | |
"blush", | |
"phone", | |
"private", | |
"found", | |
"apple", |