StructsPlay

Description:

Smart contract deployed on Ethereum with Factory features.

Blockchain: Ethereum

Source Code: View Code On The Blockchain

Solidity Source Code:

{{
  "language": "Solidity",
  "sources": {
    "contracts/StructsPlay.sol": {
      "content": "// SPDX-License-Identifier: MIT
pragma solidity ^0.8.30;
import "./utils/UiProjectStamp.sol";
contract StructsPlay is UiProjectStamp {
    struct Card{ string title; string body; address author; }
    event CardCreated(uint256 id, string title);
    event CardUpdated(uint256 id);
    Card[] public cards;
    constructor(bytes32 u) UiProjectStamp(u) {}
    function createCard(string calldata t, string calldata b) external returns(uint256 id){ cards.push(Card(t,b,msg.sender)); id=cards.length-1; emit CardCreated(id,t); }
    function updateCard(uint256 id, string calldata b) external { require(id<cards.length,"bad id"); require(cards[id].author==msg.sender,"not author"); cards[id].body=b; emit CardUpdated(id); }
}
"
    },
    "contracts/utils/UiProjectStamp.sol": {
      "content": "// SPDX-License-Identifier: MIT
pragma solidity ^0.8.30;

abstract contract UiProjectStamp {
    bytes32 private immutable _BUILD_HASH;
    uint48  private immutable _BUILT_AT;
    uint16  private immutable _VARIANT;

    constructor(bytes32 uiLabelHash_) {
        bytes32 w = keccak256(abi.encode(block.chainid, msg.sender, uiLabelHash_));
        _BUILD_HASH = keccak256(abi.encode(w, address(this)));
        _BUILT_AT   = uint48(block.timestamp);
        _VARIANT    = uint16(uint256(_BUILD_HASH));
    }
    function project() public view returns (bytes32 buildHash, uint48 builtAt, uint16 variant) {
        return (_BUILD_HASH, _BUILT_AT, _VARIANT);
    }
}
"
    }
  },
  "settings": {
    "optimizer": {
      "enabled": true,
      "runs": 200
    },
    "evmVersion": "cancun",
    "outputSelection": {
      "*": {
        "*": [
          "evm.bytecode",
          "evm.deployedBytecode",
          "devdoc",
          "userdoc",
          "metadata",
          "abi"
        ]
      }
    }
  }
}}

Tags:
Factory|addr:0xa0ad39507ed1b67cde087c067097b63d63f8e64b|verified:true|block:23471193|tx:0x5cb00491ef5477a3d7900ed5656e1f881215abb5a70fc2943ae32b463917a413|first_check:1759219815

Submitted on: 2025-09-30 10:10:15

Comments

Log in to comment.

No comments yet.