package buffer import ( "bufio" "fmt" "io" "os" "strings" ) type InputBuffer struct { Buffer string Reader *bufio.Reader } func NewInputBuffer() *InputBuffer { return &InputBuffer{ Buffer: "", Reader: bufio.NewReader(os.Stdin), } } func (inputBuffer *InputBuffer) ReadConsole() { line, err := inputBuffer.Reader.ReadString('\n') if err != nil && err != io.EOF { fmt.Println("Error reading input", err) os.Exit(1) } inputBuffer.Buffer = strings.TrimSpace(line) }