All of the following information is based on go version go1.17.1 darwin/amd64.
| GOOS | Out of the Box |
|---|---|
aix |
✅ |
android |
✅ |
| func (bt *BlinkyTape) animation(p Pattern, repeat int, delay time.Duration) { | |
| bt.status = Running | |
| innerLoop := func() bool { | |
| select { | |
| case <-bt.stop: | |
| return false | |
| default: | |
| go bt.playPattern(p, delay) | |
| <-bt.next |
| func (bt *BlinkyTape) animation(p Pattern, repeat int, delay time.Duration) { | |
| bt.status = Running | |
| L: | |
| for i := 0; repeat < 0 || i < repeat; i++ { | |
| select { | |
| case <-bt.stop: | |
| break L | |
| default: | |
| go bt.playPattern(p, delay) |
| func (bt *BlinkyTape) playPattern(p Pattern, delay time.Duration) { | |
| bt.clear() | |
| L: | |
| for _, frame := range p { | |
| bt.setFrame(frame) | |
| if err := bt.render(); err != nil { | |
| log.Fatalf("render error: %s\n", err) | |
| } |
| FS0:\EFI\ubuntu\shimx64.efi |
| // Shortest GUI program written in Golang. | |
| // It displays a window and exits after 5 seconds. | |
| package main | |
| import ( | |
| "time" | |
| "golang.org/x/exp/shiny/driver" | |
| "golang.org/x/exp/shiny/screen" | |
| ) |
| // Shortest GUI program written in Golang. | |
| // It displays a window and exits when the "close" button of the window is clicked. | |
| package main | |
| import ( | |
| "golang.org/x/exp/shiny/driver" | |
| "golang.org/x/exp/shiny/screen" | |
| // Despite that the package names have a "mobile" prefix, | |
| // these packages works on desktop. |
This is not an exhaustive list of all interfaces in Go's standard library.
I only list those I think are important.
Interfaces defined in frequently used packages (like io, fmt) are included.
Interfaces that have significant importance are also included.
All of the following information is based on go version go1.8.3 darwin/amd64.
| #!/bin/bash | |
| # The first release available is golang:1.2.0 | |
| major=1 | |
| minor=2 | |
| patch=0 | |
| while true | |
| do | |
| while true |
| import AppKit | |
| let app = NSApplication.shared | |
| app.setActivationPolicy(.regular) | |
| let window = NSWindow( | |
| contentRect: NSMakeRect(0, 0, 640, 480), | |
| styleMask: [.titled, .closable], | |
| backing: .buffered, | |
| defer: true |