repositorypackage
0.0.0-20190401220850-65da4827845a
Repository: https://github.com/moisespsena/go-ioutil.git
Documentation: pkg.go.dev
# Packages
No description provided by the author
# README
go-ioutil
Utilites for GoLang IO.
Installation
go get -u github.com/moisespsena/go-ioutil
Usage
See Sample Application for more details.
Sample Code
package main
import (
"fmt"
"github.com/moisespsena-go/iolr"
)
var i int
func check(f func() (string, error)) {
i++
fmt.Println("--> EXEMPLO ", i, "<--")
line, err := f()
if err != nil {
panic(err)
}
if iolr.IsEmptyInput(line) {
fmt.Printf("Voce não digitou nada.\n\n")
} else {
fmt.Printf("Voce digitou: %q\n\n", line)
}
}
func main() {
l := iolr.STDMessageLR
check(func() (string, error) {
fmt.Println("Digite alguma coisa:")
return iolr.StdinLR.ReadLineS()
})
check(func() (string, error) {
return l.ReadS("Digite alguma coisa 2")
})
check(func() (string, error) {
return l.ReadS("Digite alguma coisa OU apenas dê ENTER e veja o valor padrão", "Viva o Brasil!!")
})
msg := "Escolha uma Opção ou deixe vazio"
check(func() (string, error) {
return l.ReadFS(&iolr.FOptions{Message: msg, Options: []string{"a", "b", "c"}})
})
check(func() (string, error) {
return l.ReadFS(&iolr.FOptions{Message: msg, Options: []string{"a", "b", "c"}, Default: "b"})
})
check(func() (string, error) {
return l.ReadFS(&iolr.FOptions{Message: msg, Options: []string{"a", "b", "c"}}, "c")
})
check(func() (string, error) {
return l.ReadFS(&iolr.FOptionsPairs{Message: msg, Options: iolr.MapToPairs(map[interface{}]string{"B": "Brazil", "E": "EUA"})})
})
check(func() (string, error) {
return l.ReadFS(&iolr.FOptionsPairs{Message: msg, Options: iolr.MapToPairs(map[interface{}]string{"B": "Brazil", "E": "EUA"}), Default: "B"})
})
check(func() (string, error) {
return l.ReadFS(&iolr.FOptionsPairs{Message: msg, Options: iolr.MapToPairs(map[interface{}]string{"B": "Brazil", "E": "EUA"}), Default: "B"}, "c")
})
msgObrigatorio := "Escolha uma Opção (Obs: NÃO pode ser vazio)"
check(func() (string, error) {
return l.RequireFS(&iolr.FOptions{Message: msgObrigatorio, Options: []string{"a", "b", "c"}})
})
check(func() (string, error) {
return l.RequireFS(&iolr.FOptionsPairs{Message: msgObrigatorio, Options: iolr.MapToPairs(map[interface{}]string{"B": "Brazil", "E": "EUA"})})
})
}