forked from Cyfrin/solidity-by-example.github.io
-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathindex.html
1 lines (1 loc) · 9.54 KB
/
index.html
1
<!DOCTYPE html><html class="fa-events-icons-failed" lang="en"><head><meta charset="utf-8"><link href="/favicon.ico" rel="shortcut icon"><meta content="width=device-width,initial-scale=1,shrink-to-fit=yes" name="viewport"><meta content="#000000" name="theme-color"><script src="https://www.google-analytics.com/analytics.js" async type="text/javascript"></script><script src="https://use.fontawesome.com/ba3dde78ee.js"></script><link href="https://www.googletagmanager.com" rel="preconnect"><link href="https://use.fontawesome.com/ba3dde78ee.css" rel="stylesheet" media="all"><link href="/manifest.json" rel="manifest"><title>Solidity by Example | 0.7.6</title><script src="https://www.googletagmanager.com/gtag/js?id=UA-133759045-1" async></script><script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","UA-133759045-1")</script><link href="/static/css/2.8a5f298e.chunk.css" rel="stylesheet"><link href="/static/css/main.b19412ac.chunk.css" rel="stylesheet"><link href="https://use.fontawesome.com" rel="preconnect"><meta content="Learn smart contract programming using Solidity" name="Description" data-react-helmet="true"><link href="https://www.google-analytics.com" rel="preconnect"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"><div class="App_component__1dd61"><div class="Header_component__1tkkW"><a href="/"><img alt="logo" class="Header_logo__2ins2" src="/static/media/logo.9a07f18c.svg"></a><h3 class="Header_header__3mObx"><a href="/">Solidity by Example</a><div class="Header_versions__eOBao"><div class="Header_version__1QJXf">version 0.7.6</div></div></h3></div><div class="App_main__3ZkGI"><div class="pages_component__1bqIE"><h1 class="pages_header__o5uPl"><a href="/">Solidity by Example</a></h1><div>v 0.7.6</div><div><p>an introduction to <a href="https://solidity.readthedocs.io">Solidity</a> with simple examples</p><div class="pages_updates__3xY-4"><div>2021/01/24 - Minimal Proxy Contract</div><div>2021/01/01 - Updated to 0.7.6</div></div><div><ul><li class="pages_listItem__1RzOh"><a href="hello-world">Hello World</a></li><li class="pages_listItem__1RzOh"><a href="first-app">First App</a></li><li class="pages_listItem__1RzOh"><a href="primitives">Primitive Data Types</a></li><li class="pages_listItem__1RzOh"><a href="variables">Variables</a></li><li class="pages_listItem__1RzOh"><a href="state-variables">Reading and Writing to a State Variable</a></li><li class="pages_listItem__1RzOh"><a href="ether-units">Ether and Wei</a></li><li class="pages_listItem__1RzOh"><a href="gas">Gas and Gas Price</a></li><li class="pages_listItem__1RzOh"><a href="if-else">If / Else</a></li><li class="pages_listItem__1RzOh"><a href="loop">For and While Loop</a></li><li class="pages_listItem__1RzOh"><a href="mapping">Mapping</a></li><li class="pages_listItem__1RzOh"><a href="array">Array</a></li><li class="pages_listItem__1RzOh"><a href="enum">Enum</a></li><li class="pages_listItem__1RzOh"><a href="structs">Structs</a></li><li class="pages_listItem__1RzOh"><a href="data-locations">Data Locations - Storage, Memory and Calldata</a></li><li class="pages_listItem__1RzOh"><a href="function">Function</a></li><li class="pages_listItem__1RzOh"><a href="view-and-pure-functions">View and Pure Functions</a></li><li class="pages_listItem__1RzOh"><a href="error">Error</a></li><li class="pages_listItem__1RzOh"><a href="function-modifier">Function Modifier</a></li><li class="pages_listItem__1RzOh"><a href="events">Events</a></li><li class="pages_listItem__1RzOh"><a href="constructor">Constructor</a></li><li class="pages_listItem__1RzOh"><a href="inheritance">Inheritance</a></li><li class="pages_listItem__1RzOh"><a href="shadowing-inherited-state-variables">Shadowing Inherited State Variables</a></li><li class="pages_listItem__1RzOh"><a href="super">Calling Parent Contracts</a></li><li class="pages_listItem__1RzOh"><a href="visibility">Visibility</a></li><li class="pages_listItem__1RzOh"><a href="interface">Interface</a></li><li class="pages_listItem__1RzOh"><a href="payable">Payable</a></li><li class="pages_listItem__1RzOh"><a href="sending-ether">Sending Ether - Transfer, Send, and Call</a></li><li class="pages_listItem__1RzOh"><a href="fallback">Fallback</a></li><li class="pages_listItem__1RzOh"><a href="call">Call</a></li><li class="pages_listItem__1RzOh"><a href="delegatecall">Delegatecall</a></li><li class="pages_listItem__1RzOh"><a href="calling-contract">Calling Other Contract</a></li><li class="pages_listItem__1RzOh"><a href="new-contract">Creating Contracts from a Contract</a></li><li class="pages_listItem__1RzOh"><a href="try-catch">Try / Catch</a></li><li class="pages_listItem__1RzOh"><a href="import">Import</a></li><li class="pages_listItem__1RzOh"><a href="library">Library</a></li><li class="pages_listItem__1RzOh"><a href="hashing">Hashing with Keccak256</a></li><li class="pages_listItem__1RzOh"><a href="signature">Verifying Signature</a></li></ul></div><div><h3>Applications</h3><ul><li class="pages_listItem__1RzOh"><a href="/app/multi-sig-wallet">Multi Sig Wallet</a></li><li class="pages_listItem__1RzOh"><a href="/app/merkle-tree">Merkle Tree</a></li><li class="pages_listItem__1RzOh"><a href="/app/iterable-mapping">Iterable Mapping</a></li><li class="pages_listItem__1RzOh"><a href="/app/erc20">ERC20</a></li><li class="pages_listItem__1RzOh"><a href="/app/create2">Precompute Contract Address with Create2</a></li><li class="pages_listItem__1RzOh"><a href="/app/minimal-proxy">Minimal Proxy Contract</a></li><li class="pages_listItem__1RzOh"><a href="/app/uni-directional-payment-channel">Uni-directional Payment Channel</a></li><li class="pages_listItem__1RzOh"><a href="/app/bi-directional-payment-channel">Bi-directional Payment Channel</a></li></ul></div><div><h3>Hacks</h3><ul><li class="pages_listItem__1RzOh"><a href="/hacks/re-entrancy">Re-Entrancy</a></li><li class="pages_listItem__1RzOh"><a href="/hacks/overflow">Arithmetic Overflow and Underflow</a></li><li class="pages_listItem__1RzOh"><a href="/hacks/self-destruct">Self Destruct</a></li><li class="pages_listItem__1RzOh"><a href="/hacks/accessing-private-data">Accessing Private Data</a></li><li class="pages_listItem__1RzOh"><a href="/hacks/delegatecall">Delegatecall</a></li><li class="pages_listItem__1RzOh"><a href="/hacks/randomness">Source of Randomness</a></li><li class="pages_listItem__1RzOh"><a href="/hacks/denial-of-service">Denial of Service</a></li><li class="pages_listItem__1RzOh"><a href="/hacks/phishing-with-tx-origin">Phishing with tx.origin</a></li><li class="pages_listItem__1RzOh"><a href="/hacks/hiding-malicious-code-with-external-contract">Hiding Malicious Code with External Contract</a></li><li class="pages_listItem__1RzOh"><a href="/hacks/honeypot">Honeypot</a></li><li class="pages_listItem__1RzOh"><a href="/hacks/front-running">Front Running</a></li><li class="pages_listItem__1RzOh"><a href="/hacks/block-timestamp-manipulation">Block Timestamp Manipulation</a></li><li class="pages_listItem__1RzOh"><a href="/hacks/signature-replay">Signature Replay</a></li></ul></div></div></div></div><div class="App_footer__29Fsv"><div class="Footer_component__2wm-B"><div class="Footer_row__3cluQ">Donate<span aria-label="smiley" role="img">🙂</span></div><div class="Footer_row__3cluQ"><a href="https://etherscan.io/address/0x95a647B3d8a3F11176BAdB799b9499C671fa243a" target="__blank">0x95a6...fa243</a></div><div class="Footer_row__3cluQ">your ETH will directly go to<a href="https://khanacademy.org" target="__blank" class="Footer_khan__3lTcL">Khan Academy</a></div><div class="Footer_row__3cluQ"><a href="mailto:[email protected]">[email protected]</a></div><div class="Footer_row__3cluQ"><a href="https://github.com/solidity-by-example/solidity-by-example.github.io" target="__blank">source</a><div class="Footer_bar__93usQ">|</div><a href="https://github.com/solidity-by-example/solidity-by-example.github.io/blob/gh-pages/LICENSE" target="__blank">license</a></div></div></div></div></div><script>!function(e){function t(t){for(var n,l,i=t[0],a=t[1],p=t[2],c=0,s=[];c<i.length;c++)l=i[c],Object.prototype.hasOwnProperty.call(o,l)&&o[l]&&s.push(o[l][0]),o[l]=0;for(n in a)Object.prototype.hasOwnProperty.call(a,n)&&(e[n]=a[n]);for(f&&f(t);s.length;)s.shift()();return u.push.apply(u,p||[]),r()}function r(){for(var e,t=0;t<u.length;t++){for(var r=u[t],n=!0,i=1;i<r.length;i++){var a=r[i];0!==o[a]&&(n=!1)}n&&(u.splice(t--,1),e=l(l.s=r[0]))}return e}var n={},o={1:0},u=[];function l(t){if(n[t])return n[t].exports;var r=n[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,l),r.l=!0,r.exports}l.m=e,l.c=n,l.d=function(e,t,r){l.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},l.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.t=function(e,t){if(1&t&&(e=l(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(l.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)l.d(r,n,function(t){return e[t]}.bind(null,n));return r},l.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return l.d(t,"a",t),t},l.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},l.p="/";var i=this["webpackJsonpsolidity-by-example"]=this["webpackJsonpsolidity-by-example"]||[],a=i.push.bind(i);i.push=t,i=i.slice();for(var p=0;p<i.length;p++)t(i[p]);var f=a;r()}([])</script><script src="/static/js/2.2c6f9866.chunk.js"></script><script src="/static/js/main.7645568c.chunk.js"></script></body></html>