Skip to content

Commit

Permalink
recover panic
Browse files Browse the repository at this point in the history
  • Loading branch information
mattn committed Sep 25, 2013
1 parent 2e623cc commit 71f6554
Showing 1 changed file with 23 additions and 18 deletions.
41 changes: 23 additions & 18 deletions gopl/gopl.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,23 +13,28 @@ func main() {
var fset = token.NewFileSet()
r := bufio.NewReader(os.Stdin)
for {
print("# ")
line, err := r.ReadString('\n')
if err != nil {
break
}
code, err := world.Compile(fset, line+";")
if err != nil {
fmt.Fprintln(os.Stderr, err)
continue
}
ret, err := code.Run()
if err != nil {
fmt.Fprintln(os.Stderr, err)
continue
}
if ret != nil {
println(ret.String())
}
func() {
defer func() {
recover()
}()
fmt.Print("# ")
line, err := r.ReadString('\n')
if err != nil {
return
}
code, err := world.Compile(fset, line + "\n")
if err != nil {
fmt.Fprintln(os.Stderr, err)
return
}
ret, err := code.Run()
if err != nil {
fmt.Fprintln(os.Stderr, err)
return
}
if ret != nil {
fmt.Println(ret.String())
}
}()
}
}

0 comments on commit 71f6554

Please sign in to comment.