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
// SPDX-License-Identifier: GPL-3.0-or-later | |
pragma solidity 0.8.17; | |
// Static Diamond | |
// A static implementation of EIP-2535 Diamonds: https://eips.ethereum.org/EIPS/eip-2535 | |
// This code was extraced from Pendle's deployed contracts here: | |
// https://etherscan.io/address/0x0000000001e4ef00d069e71d6ba041b0a16f7ea0#code#F1#L1 | |
// Blog article on the basics to implement EIP-2535 Diamonds here: |
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
did:3:kjzl6cwe1jw1497jm1ckqomr59zuprfmyjqqsk4mayxovtmgynx89x2ktfsvk69 |
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.8.17; | |
library LibPerson { | |
uint256 private constant INNER_STRUCT = 0; | |
struct Car { | |
string brand; | |
string model; | |
} |
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
// SPDX-License-Identifier: MIT | |
pragma solidity ^0.8.17; | |
struct Data { | |
uint a; | |
uint b; | |
} | |
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
// SPDX-License-Identifier: MIT | |
pragma solidity 0.8.11; | |
import { LibDiamond } from "../libraries/LibDiamond.sol"; | |
import { IDiamondCut } from "../interfaces/IDiamondCut.sol"; | |
import { IERC165 } from "../interfaces/IERC165.sol"; | |
import { IERC721 } from "../interfaces/IERC721.sol"; | |
contract Diamond { |
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
/** | |
*Submitted for verification at polygonscan.com on 2021-06-13 | |
*/ | |
pragma solidity 0.5.17; | |
/* | |
* @dev Provides information about the current execution context, including the | |
* sender of the transaction and its data. While these are generally available |
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
// SPDX-License-Identifier: MIT | |
pragma solidity 0.8.11; | |
function doIt() external { | |
uint256 length = myArray.length; // state read | |
uint b; | |
for(uint256 i; i < length; i++) { // local reads | |
b++; // local write | |
} | |
mySum = b; // state write |
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
// SPDX-License-Identifier: MIT | |
pragma solidity 0.8.11; | |
// Note: A facet is a contract used by a diamond. | |
// Note: This is a contrived example to show how to share internal functions between facets | |
// Note: It is not an accurate or complete implementation | |
// This design of sharing internal functions between facets works because remember the diamond proxy holds all the | |
// data and the facets read and write to the diamond proxy contract storage-- not to their own contract storage. |
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
//SPDX-License-Identifier: MIT | |
pragma solidity =0.8.9; | |
library MyLib { | |
function appStorage() | |
internal | |
pure | |
returns (AppStorage storage ds) | |
{ | |
assembly { |
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
//SPDX-License-Identifier: MIT | |
pragma solidity =0.8.9; | |
import "./AppStorage.sol" | |
contract StakingFacet { | |
AppStorage internal s; | |
function myFacetFunction() external { | |
s.lastVar = s.firstVar + s.secondVar; |
NewerOlder