Created
February 4, 2022 20:07
-
-
Save vis-kid/4a5f4425ccc1dec8e9c61eae85f53725 to your computer and use it in GitHub Desktop.
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.5.11+commit.22be8592.js&optimize=false&runs=200&gist=
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| pragma solidity 0.5.11; | |
| contract A { | |
| event Log(string message); | |
| function foo() public { | |
| emit Log("Contract A.foo was called"); | |
| } | |
| function bar() public { | |
| emit Log("Contract A.bar was called"); | |
| } | |
| } | |
| contract B is A { | |
| function foo() public { | |
| emit Log("Contract B.foo was called"); | |
| A.foo(); | |
| } | |
| function bar() public { | |
| emit Log("Contract B.bar was called"); | |
| super.bar(); | |
| } | |
| } | |
| contract C is A { | |
| function foo() public { | |
| emit Log("Contract C.foo was called"); | |
| A.foo(); | |
| } | |
| function bar() public { | |
| emit Log("Contract C.bar was called"); | |
| super.bar(); | |
| } | |
| } | |
| contract D is B, C { | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment