1 package ansiterm 2 3 type groundState struct { 4 baseState 5 } 6 7 func (gs groundState) Handle(b byte) (s state, e error) { 8 gs.parser.context.currentChar = b 9 10 nextState, err := gs.baseState.Handle(b) 11 if nextState != nil || err != nil { 12 return nextState, err 13 } 14 15 switch { 16 case sliceContains(printables, b): 17 return gs, gs.parser.print() 18 19 case sliceContains(executors, b): 20 return gs, gs.parser.execute() 21 } 22 23 return gs, nil 24 } 25