The explorer is out of sync. The last synced block is 524 hours ago. Current block height: explorer: 2206528 / node: Too Many Requests! Wait for 0s / ref: 2492275

Program test_credits_test.aleo

Program ID
test_credits_test.aleo
Owner signature
sign1scx9vc4mlt98afkwutpezs2aw8glufvqgspq87sl86zezefq5cqzugz8adckgp0zjtml3pf8257fxll84xx6vt8eq8thd0w8cqf9jqm78ufuykfpwffvve4z6q2z7f6xt66yaw2433dswewzvrrst9dyps4yxrwfa9vv7mpgw5etrd6jd6pts4amkavmmnwwdkaaddjla6fqwl7v20n
Times called
0
Similar programs
0
Imports
-
Mappings
committee (address -> committee_state)
bonded (address -> bond_state)
unbonding (address -> unbond_state)
account (address -> u64)
Structs
committee_state
bond_state
unbond_state
Records
credits
Functions
-
Transitions
transfer_private(credits, address, u64) -> (credits, credits)
transfer_private_to_public(credits, public address, public u64) -> credits finalize(address, u64)
Program Source Code (Aleo Instruction) Upload Leo source

program test_credits_test.aleo;

mapping committee:
    key as address.public;
    value as committee_state.public;

struct committee_state:
    microcredits as u64;
    is_open as boolean;

mapping bonded:
    key as address.public;
    value as bond_state.public;

struct bond_state:
    validator as address;
    microcredits as u64;

mapping unbonding:
    key as address.public;
    value as unbond_state.public;

struct unbond_state:
    microcredits as u64;
    height as u32;

mapping account:
    key as address.public;
    value as u64.public;

record credits:
    owner as address.private;
    microcredits as u64.private;

function transfer_private:
    input r0 as credits.record;
    input r1 as address.private;
    input r2 as u64.private;
    sub r0.microcredits r2 into r3;
    cast r1 r2 into r4 as credits.record;
    cast r0.owner r3 into r5 as credits.record;
    output r4 as credits.record;
    output r5 as credits.record;

function transfer_private_to_public:
    input r0 as credits.record;
    input r1 as address.public;
    input r2 as u64.public;
    sub r0.microcredits r2 into r3;
    cast r0.owner r3 into r4 as credits.record;
    async transfer_private_to_public r1 r2 into r5;
    output r4 as credits.record;
    output r5 as test_credits_test.aleo/transfer_private_to_public.future;
finalize transfer_private_to_public:
    input r0 as address.public;
    input r1 as u64.public;
    get.or_use account[r0] 0u64 into r2;
    add r1 r2 into r3;
    set r3 into account[r0];

Block heightTimestampTransition IDFunction callState








Not implemented