项目作者: Eun

项目描述 :
Printf for maps and structs
高级语言: Go
项目地址: git://github.com/Eun/mapprint.git
创建时间: 2019-02-06T15:27:44Z
项目社区:https://github.com/Eun/mapprint

开源协议:MIT License

下载


mapprint

Actions Status
Coverage Status
PkgGoDev
GoDoc
go-report

go1.15

Printf for maps and structs

  1. go get github.com/Eun/mapprint
  1. // prints `[14:01:08.005674] Database initialized'
  2. mapprint.Printf("[%0H:%02m:%02s.%06ms] Database initialized", map[string]interface{}{
  3. "H": 14,
  4. "m": 1,
  5. "s": 8,
  6. "ms": 5674,
  7. })

structs

  1. type User struct {
  2. Name string
  3. Balance int
  4. }
  5. // prints `Hello Joe, your balance is 104€!'
  6. mapprint.Printf("Hello %Name, your balance is %Balance€!", User{
  7. Name: "Joe",
  8. Balance: 104,
  9. })

formating

  1. // prints `Hello Joe'
  2. mapprint.Printf("Hello %10user!", map[string]string{
  3. "user": "Joe",
  4. })
  5. // prints `Hello Joe '
  6. mapprint.Printf("Hello %-10user!", map[string]string{
  7. "user": "Joe",
  8. })
  9. // prints `Hello Joe '
  10. mapprint.Printf("Hello |-10user!", map[string]string{
  11. "user": "Joe",
  12. })
  13. // prints `Hello Joe, your balance is 0000104.00€!'
  14. mapprint.Printf("Hello %Name, your balance is %010.2Balance€!", map[string]interface{}{
  15. "Name": "Joe",
  16. "Balance": 104,
  17. })
  18. // maybe something more exotic?
  19. // prints `Hello Joe, your balance is ABAB104.00€!'
  20. mapprint.Printf("Hello %Name, your balance is %AB10.2Balance€!", map[string]interface{}{
  21. "Name": "Joe",
  22. "Balance": 104,
  23. })