argotorg / argotorg/solidity

Add .exists() and .iscontract() on to the address type

Open
#4,910 14 comments 0 reactions 0 assignees View on GitHub
language design :rage4:
Dominant language
C++
Stars
25.7k
Forks
6.2k
Avg merge
1d 11h
Merged PRs (30d)
21

Description

Not fully sure yet if `.exists()` can be implemented properly, but `.iscontract()` should be possible to be implemented via the `extcodesize` instruction.

With having `.iscontract()`, #4823 would not need to be implemented.

Contributor guide

Open the contributing guide

Research direction

Begin with issue #4823 and the EVM extcodesize instruction cited in this issue. The payload names no files, tests, or entry points, so locate the address type implementation and its tests before assessing feasibility. Done means the semantics of .exists() and .iscontract() are decided and the supported behavior is implemented and tested.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, solidity
Domain
blockchain, compilers
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.