Solidity

solidityのmappingのvalueは小さくしたほうが安いのか検証2

solidityのmappingのvalueは小さくしたほうが安いのか検証2

今度はmappingのvalueが構造体の場合を検証。

構造体の中身は、初回は小さいほどgasが安いが、
2回め以降は変わらない。というかそれほど構造体のパッキングは
gas節約に寄与しないような気がしてきた。

ropstenがおかしいのかな。
でもmainnetでの検証はおかねかかるからやりたくない。

solidityのmappingのvalueは小さくしたほうが安いのか検証

solidityのmappingのvalueは小さくしたほうが安いのか検証

検証結果→そんなことない。むしろuint256が一番安い。

テストネットropstenで検証した。

solidityで文字列連結して返却

solidityで文字列連結して返却

文字列連結はこちらを使わせていただきました。
https://qiita.com/onokatio/items/4d74229bd6015379e379

デリミタを入力禁止にして運用する必要があるね

https://ethfiddle.com/-wjoyLlfIZ

storageのstruct型配列とpush時のgasの関係

storageのstruct型配列とpush時のgasの関係

・packingとは別問題で、uint8はuint32に比べて微妙にgasが多く掛かるらしい(圧縮のためだとか)。

参考
https://www.bitdegree.org/learn/solidity-layout/
https://gitter.im/ethereum/solidity?at=5a1454772837ee5106af8fbb

solidityでbubblesort

solidityでbubblesort

solidityは破壊的関数が実装できるようだ。Javaと一緒。

https://ethfiddle.com/18YvWzBm06

【PHP】Solidityのソースコードから関数定義を抽出するスクリプト

【PHP】Solidityのソースコードから関数定義を抽出するスクリプト

solidityのソースコードから関数定義部分だけ抜き出すスクリプトを作った(だいぶやっつけだけど)。
試しにCryptoKittiesのソースコードに対して使ってみた。

制限事項として
/*コメント*/ function() public {
のような行は表示されない。

https://ethfiddle.com/09YbyJRfiI

solidityでタプルを個別に受け取るのは本当に代入しているのかテスト

solidityでタプルを個別に受け取るのは本当に代入しているのかテスト

テスト結果:
本当にその都度代入していた。
インタフェースの仕組みもなんとなくわかった。

https://ethfiddle.com/jrR_Vrd56Y

他のコントラクトのstorageのmappingを使用する方法

他のコントラクトのstorageのmappingを使用する方法

勝手にキーを引数に取る関数になるっぽい

https://ethfiddle.com/

solidityでquicksort

solidityでquicksort

https://ethfiddle.com/IIdgORQZWb

solidityで素数判定の結果の精度確認

solidityで素数判定の結果の精度確認