LoginSignup
0
0

More than 5 years have passed since last update.

jsdoでweb3.js その3

Posted at

概要

jsdoでweb3.jsやってみた。
remixでコンパイルしてみた。

サンプルコード

pragma solidity ^0.4.19;

contract Counter {
    uint32 private count = 0;
    function incrementCounter() public {
        count += 1;
    }
    function decrementCounter() public {
        if (count <= 0) return;
        count -= 1;
    }
    function resetCounter() public {
        count = 0;
    }
    function getCount() public constant returns (uint32) {
        return count;
    }
}

結果

bin

{
    "linkReferences": {},
    "object": "60606040526000805463ffffffff19169055341561001c57600080fd5b6101678061002b6000396000f3006060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416635b34b9668114610066578063a87d942c1461007b578063dbdf7fce146100a7578063f5c5ad83146100ba575b600080fd5b341561007157600080fd5b6100796100cd565b005b341561008657600080fd5b61008e6100eb565b60405163ffffffff909116815260200160405180910390f35b34156100b257600080fd5b6100796100f7565b34156100c557600080fd5b610079610106565b6000805463ffffffff8082166001011663ffffffff19909116179055565b60005463ffffffff1690565b6000805463ffffffff19169055565b6000805463ffffffff161161011a57610139565b6000805463ffffffff19811663ffffffff918216600019019091161790555b5600a165627a7a72305820a97f856e762b708b49e1ce7a9fea95411db202207fb1ae9d268ad8eebfda43520029",
    "opcodes": "PUSH1 0x60 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 SLOAD PUSH4 0xFFFFFFFF NOT AND SWAP1 SSTORE CALLVALUE ISZERO PUSH2 0x1C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x167 DUP1 PUSH2 0x2B PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN STOP PUSH1 0x60 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x61 JUMPI PUSH4 0xFFFFFFFF PUSH29 0x100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 CALLDATALOAD DIV AND PUSH4 0x5B34B966 DUP2 EQ PUSH2 0x66 JUMPI DUP1 PUSH4 0xA87D942C EQ PUSH2 0x7B JUMPI DUP1 PUSH4 0xDBDF7FCE EQ PUSH2 0xA7 JUMPI DUP1 PUSH4 0xF5C5AD83 EQ PUSH2 0xBA JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE ISZERO PUSH2 0x71 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x79 PUSH2 0xCD JUMP JUMPDEST STOP JUMPDEST CALLVALUE ISZERO PUSH2 0x86 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x8E PUSH2 0xEB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0xFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE ISZERO PUSH2 0xB2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x79 PUSH2 0xF7 JUMP JUMPDEST CALLVALUE ISZERO PUSH2 0xC5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x79 PUSH2 0x106 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH4 0xFFFFFFFF DUP1 DUP3 AND PUSH1 0x1 ADD AND PUSH4 0xFFFFFFFF NOT SWAP1 SWAP2 AND OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH4 0xFFFFFFFF AND SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH4 0xFFFFFFFF NOT AND SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH4 0xFFFFFFFF AND GT PUSH2 0x11A JUMPI PUSH2 0x139 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH4 0xFFFFFFFF NOT DUP2 AND PUSH4 0xFFFFFFFF SWAP2 DUP3 AND PUSH1 0x0 NOT ADD SWAP1 SWAP2 AND OR SWAP1 SSTORE JUMPDEST JUMP STOP LOG1 PUSH6 0x627A7A723058 KECCAK256 0xa9 PUSH32 0x856E762B708B49E1CE7A9FEA95411DB202207FB1AE9D268AD8EEBFDA43520029 ",
    "sourceMap": "26:387:0:-;;;73:1;50:24;;-1:-1:-1;;50:24:0;;;26:387;;;;;;;;;;;;;;"
}

abi

[{
        "constant": false,
        "inputs": [],
        "name": "incrementCounter",
        "outputs": [],
        "payable": false,
        "stateMutability": "nonpayable",
        "type": "function"
    },{
        "constant": true,
        "inputs": [],
        "name": "getCount",
        "outputs": [{
                "name": "",
                "type": "uint32"
        }],
        "payable": false,
        "stateMutability": "view",
        "type": "function"
    },{
        "constant": false,
        "inputs": [],
        "name": "resetCounter",
        "outputs": [],
        "payable": false,
        "stateMutability": "nonpayable",
        "type": "function"
    },{
        "constant": false,
        "inputs": [],
        "name": "decrementCounter",
        "outputs": [],
        "payable": false,
        "stateMutability": "nonpayable",
        "type": "function"
}]

以上。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0