Go
Go の Playground で複数ファイルを書けることを知った。 例: https://play.golang.org/p/pzk7LuyCBn4 しかも複数ファイルをタブ表示にする Chrome 拡張まであることを知った。 Go Playground Addons - Chrome ウェブストア vim-jp slack の #golang
と思った。理由は以下の通り。 ずっと地味に困ってた事があって、ある struct をコンストラクタ的な関数 (例えば Foo って struct だったら NewFoo って名前の関数) 経由で生成したい、と思っても、 Go の言語仕様上普通にこんな感じで struct を作れてしま…
こんな感じに使う。 package main import ( "errors" "fmt" ) func main() { fmt.Println("start") if err := f(); err != nil { fmt.Println(err.Error()) } fmt.Println("end") } func f() (err error) { fmt.Println("f() start") g := &Guard{} defer fu…
基本的な Go の挙動が理解できてないのかもしれないですが、なぜ以下のコードで (2) err != nil: true となるのかが分かりません。 誰か教えて… (g() がメソッドなのはなるべく元のコードと似せたせいです) gist.github.com 追記 KoRoN さんとりんだんさんに…
基本的に Go アプリのテストは以下を参考にしたら概ねうまく言ってたんだけど、 (最新じゃなく)バージョン固定してる場合に問題となったため書いておく。 blog.markvincze.com 起こった問題 最近 AppVeyor の Go のバージョンが上がって Go 1.10 をデフォ…
mattn さんに教えてもらった。 いつもお世話になってて感謝しかない。 -d dir1 -d dir2 みたいな引数を持つオプションを複数指定する方法 Go の flag パッケージで複数オプションをパースするにはどうしたらいいんだろ。-d dir1 -d dir2 で [dir1, dir2] の…
godoc . org と github . com のリポジトリを切り替える雑なブックマークレット作ったhttps://t.co/VwKlEeWUqW— tyru (@_tyru_) 2017年9月17日 gist.github.com 以上です。
type html5Handler struct { fs http.FileSystem routes []staticRoute } // Look up path when Vue.js HTML5 history mode is enabled // https://router.vuejs.org/ja/essentials/history-mode.html func enableHTML5Mode(fs http.FileSystem, routes []st…
github.com issue には上げたけど日本語でも書く。 結果から言うと自分が README.md よく読んでなかっただけ。 でも gvm ももうちょっと気を利かせてくれてもいいのになーと思ったので上の issue でお願いしたという経緯です。 解決法 Go 1.5 以上をコンパイ…
習作って言っても以前 Go 触ってたことはありましたが、 そのツールを作ったこと自体忘れてたぐらい記憶が抜け落ちていたので、改めて Go に再入門しました。 作ったもの 使い方は README.md 読んでください(まだ不十分だと思いますが、分からない点は issu…
言葉で説明するのだるいので次のコードを見てください。 package main import ( "fmt" ) func main() { array := []int{1, 2, 3} // これだと &a が同じアドレスになってしまうことがある // (range は array[i] のコピーを返す) for i, a := range array { …