Go
https://go.dev/
Warning: This section is under construction
Assume a bare file structure like the following, and I want
to create a file like ./foo/bar/baz.txt
:
import (
"log"
"os"
"path/filepath"
)
func main() {
file := "foo/bar/baz.txt"
parentDir := filepath.Dir(file)
if _, err := os.Stat(parentDir); errors.Is(err, os.ErrNotExist) {
err := os.MkdirAll(parentDir, os.ModePerm)
if err != nil {
log.Println(err)
}
}
}
https://go.dev/play/p/U85ZMhz3hCA
// You can edit this code!
// Click here and start typing.
package main
import "fmt"
type Node struct {
Value string
}
func main() {
n1 := Node{"1"}
n2 := Node{"2"}
edges := make(map[Node][]*Node)
fmt.Println(fmt.Sprintf("%+v", edges))
edges[n1] = []*Node{&n2}
edges[n2] = make([]*Node, 0)
fmt.Println(fmt.Sprintf("%+v", edges[n1]))
fmt.Println(fmt.Sprintf("%+v", edges[n2]))
fmt.Println("---")
fmt.Println(fmt.Sprintf("%+v", edges))
}