...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package expr
18
19 import (
20 `fmt`
21 )
22
23
24 type SyntaxError struct {
25 Pos int
26 Reason string
27 }
28
29 func newSyntaxError(pos int, reason string) *SyntaxError {
30 return &SyntaxError {
31 Pos : pos,
32 Reason : reason,
33 }
34 }
35
36 func (self *SyntaxError) Error() string {
37 return fmt.Sprintf("Syntax error at position %d: %s", self.Pos, self.Reason)
38 }
39
40
41 type RuntimeError struct {
42 Reason string
43 }
44
45 func newRuntimeError(reason string) *RuntimeError {
46 return &RuntimeError {
47 Reason: reason,
48 }
49 }
50
51 func (self *RuntimeError) Error() string {
52 return "Runtime error: " + self.Reason
53 }
54
View as plain text