Skip to content

Instantly share code, notes, and snippets.

@zzangYeobin
zzangYeobin / .deps...npm....resolution-index.json
Created April 30, 2026 05:20
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at https://remix.ethereum.org/#version=soljson-v0.8.34+commit.80d5c536.js&optimize=undefined&runs=200&gist=
{
"Voting.sol": {
"__sources__": {
"Voting.sol": {
"content": "// SPDX-License-Identifier: MIT\r\npragma solidity ^0.8.0;\r\n\r\ncontract Voting {\r\n // 후보자 구조체\r\n struct Candidate {\r\n string name;\r\n uint voteCount;\r\n }\r\n\r\n address public admin;\r\n mapping(address => bool) public whitelist;\r\n mapping(address => bool) public hasVoted;\r\n Candidate[] public candidates;\r\n bool public votingActive;\r\n\r\n // 관리자만 실행 가능\r\n modifier onlyAdmin() {\r\n require(msg.sender == admin, \"Admin only\");\r\n _;\r\n }\r\n\r\n // 투표 진행 중일 때만 실행 가능\r\n modifier isActive() {\r\n require(votingActive, \"Voting is not active\");\r\n _;\r\n }\r\n\r\n constructor() {\r\n admin = msg.sender;\r\n }\r\n\r\n // 후보자 등록\r\n function addCandidate(string memory _name) public onlyAdmin {\r\n candidates.push(Candidate(_name, 0));\r\n }\r\n\r\n // 유권자 등록 (화이트리스트)\r\n function addVoter(a
@zzangYeobin
zzangYeobin / .deps...npm....resolution-index.json
Created April 30, 2026 05:17
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at https://remix.ethereum.org/#version=soljson-v0.8.34+commit.80d5c536.js&optimize=undefined&runs=200&gist=
{
"Voting.sol": {
"__sources__": {
"Voting.sol": {
"content": "// SPDX-License-Identifier: MIT\r\npragma solidity ^0.8.0;\r\n\r\ncontract Voting {\r\n // 후보자 구조체\r\n struct Candidate {\r\n string name;\r\n uint voteCount;\r\n }\r\n\r\n address public admin;\r\n mapping(address => bool) public whitelist;\r\n mapping(address => bool) public hasVoted;\r\n Candidate[] public candidates;\r\n bool public votingActive;\r\n\r\n // 관리자만 실행 가능\r\n modifier onlyAdmin() {\r\n require(msg.sender == admin, \"Admin only\");\r\n _;\r\n }\r\n\r\n // 투표 진행 중일 때만 실행 가능\r\n modifier isActive() {\r\n require(votingActive, \"Voting is not active\");\r\n _;\r\n }\r\n\r\n constructor() {\r\n admin = msg.sender;\r\n }\r\n\r\n // 후보자 등록\r\n function addCandidate(string memory _name) public onlyAdmin {\r\n candidates.push(Candidate(_name, 0));\r\n }\r\n\r\n // 유권자 등록 (화이트리스트)\r\n function addVoter(a