golang

module
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 16, 2019 License: MIT

README

GoDoc Report card

golang

Useful libs or tools for Golang

GoLibs

  • generator - Generator behaves like Generator in python or ES6, with yield and next statements.
  • sql - Enhance go std sql.
    • NullDuration - NullDuration represents an interface that may be null. NullDuration implements the Scanner interface so it can be used as a scan destination, similar to sql.NullString.
    • NullJson - NullJson represents an interface that may be null. NullJson implements the Scanner interface so it can be used as a scan destination, similar to sql.NullString. Deprecate, use go-nulljson instead. For more information, see: https://godoc.org/github.com/searKing/golang/tools/cmd/go-nulljson
  • ternary_search_tree - A type of trie (sometimes called a prefix tree) where nodes are arranged in a manner similar to a binary search tree, but with up to three children rather than the binary tree's limit of two.
  • connection mux - Connection Mux is a generic Go library to multiplex connections based on their payload. Using cmux, you can serve gRPC, SSH, HTTPS, HTTP, Go RPC, and pretty much any other protocol on the same TCP listener.
  • SniffReader - A Reader that allows sniff and read from the provided input reader. data is buffered if Sniff(true) is called. buffered data is taken first, if Sniff(false) is called.
  • multiple_prefix - Prefixes for decimal and binary multiples, Prefixes for decimal multiples, Prefixes for binary multiples.
  • flag - Enhance go std flag, such as StringSlice that is a flag.Value that accumulates strings, e.g. --flag=one --flag=two would produce []string{"one", "two"}.
  • goroutine - goroutine is a collection of apis about goroutine.
    • ID() - returns goroutine id of the goroutine that calls it.
    • Lock - represents a goroutine ID, with goroutine ID checked, that is whether GoRoutines of lock newer and check caller differ.

GoGenerateTools

go generate is only useful if you have tools to use it with! Here is an incomplete list of useful tools that generate code.

  • go-syncmap - Generates Go code using a package as a generic template for sync.Map.
  • go-syncpool - Generates Go code using a package as a generic template for sync.Pool.
  • go-atomicvalue - Generates Go code using a package as a generic template for atomic.Value.
  • go-option - Generates Go code using a package as a graceful option.
  • go-nulljson - Generates Go code using a package as a generic template that implements sql.Scanner and sql.Valuer.
  • go-enum - Generates Go code using a package as a generic template which implements interface fmt.Stringer | binary | json | text | sql | yaml for enums.

Directories

Path Synopsis
go module
pkg module
x/resilience
Package resilience provides helpers for dealing with resilience.
Package resilience provides helpers for dealing with resilience.
webserver Module
third_party module
gocloud.dev Module
thirdparty
tools module
cmd/go-enum Module
cmd/go-import Module
cmd/go-option Module
cmd/go-sqlx Module
common Module
go-enum Module
go-import Module
go-nulljson Module
go-option Module
go-sqlx Module
go-syncmap Module
go-syncpool Module
go-validator Module

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL