forked from ObjectProfile/PythonBridge
-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathPBPythonError.class.st
More file actions
103 lines (85 loc) · 1.96 KB
/
PBPythonError.class.st
File metadata and controls
103 lines (85 loc) · 1.96 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
Class {
#name : #PBPythonError,
#superclass : #PBRemoteNotification,
#instVars : [
'command',
'errorMessage',
'application',
'proceedAction',
'trace'
],
#category : #'PythonBridge-ErrorHandling'
}
{ #category : #accessing }
PBPythonError >> application [
^ application
]
{ #category : #accessing }
PBPythonError >> application: anObject [
application := anObject
]
{ #category : #accessing }
PBPythonError >> command [
^ command
]
{ #category : #accessing }
PBPythonError >> command: anObject [
command := anObject
]
{ #category : #accessing }
PBPythonError >> defaultAction [
"No one has handled this error, but now give them a chance to decide how to debug it. If none handle this either then open debugger (see UnhandedError-defaultAction)"
^ PBPlatform current uiManager spawnDebuggerOnException: self
]
{ #category : #private }
PBPythonError >> defaultProceedAction [
^ PBDropQueue new
]
{ #category : #accessing }
PBPythonError >> errorMessage [
^ errorMessage
]
{ #category : #accessing }
PBPythonError >> errorMessage: anObject [
errorMessage := anObject
]
{ #category : #initialization }
PBPythonError >> initialize [
super initialize.
proceedAction := self defaultProceedAction
]
{ #category : #accessing }
PBPythonError >> isResumable [
^ true
]
{ #category : #accessing }
PBPythonError >> messageText [
^ errorMessage
]
{ #category : #accessing }
PBPythonError >> proceedAction [
^ proceedAction
]
{ #category : #accessing }
PBPythonError >> proceedAction: anObject [
proceedAction := anObject
]
{ #category : #printing }
PBPythonError >> summaryText [
"Answer a formatted BlText describing the receiver's error"
| text |
text := errorMessage
ifNil: [ '' ]
ifNotNil: [ errorMessage ].
text := text asRopedText, (String cr, String cr) asRopedText,
trace asRopedText glamorousCodeFont.
^ text
]
{ #category : #tracing }
PBPythonError >> trace [
^ trace
]
{ #category : #tracing }
PBPythonError >> trace: aTrace [
trace := aTrace
]