2
2
from psutil import Process
3
3
from datetime import datetime , timezone
4
4
from random import randrange
5
- from .ec_classes import FatalError , RuntimeWarning , RuntimeError , AssertionError , Condition , Object
5
+ from .ec_classes import FatalError , RuntimeWarning , RuntimeError , AssertionError , NoValueError , NoValueRuntimeError , Condition , Object
6
6
from .ec_handler import Handler
7
7
from .ec_timestamp import getTimestamp
8
8
@@ -94,7 +94,7 @@ def k_append(self, command):
94
94
command ['target' ] = symbolRecord ['name' ]
95
95
self .add (command )
96
96
return True
97
- self .warning (f'Core.append: Variable " { symbolRecord ["name" ]} " does not hold a value' )
97
+ self .warning (f'Core.append: Variable { symbolRecord ["name" ]} does not hold a value' )
98
98
return False
99
99
100
100
def r_append (self , command ):
@@ -251,7 +251,7 @@ def k_decrement(self, command):
251
251
command ['target' ] = self .getToken ()
252
252
self .add (command )
253
253
return True
254
- self .warning (f'Core.decrement: Variable " { symbolRecord ["name" ]} " does not hold a value' )
254
+ self .warning (f'Core.decrement: Variable { symbolRecord ["name" ]} does not hold a value' )
255
255
return False
256
256
257
257
def r_decrement (self , command ):
@@ -277,7 +277,7 @@ def k_delete(self, command):
277
277
command ['var' ] = record ['name' ]
278
278
self .add (command )
279
279
return True
280
- FatalError (self .compiler , f'Variable { record [ 'name' ] } does not hold a value' )
280
+ NoValueError (self .compiler , record )
281
281
self .warning (f'Core.delete: variable expected; got { self .getToken ()} ' )
282
282
else :
283
283
self .warning (f'Core.delete: "file", "property" or "element" expected; got { token } ' )
@@ -418,7 +418,7 @@ def k_get(self, command):
418
418
if symbolRecord ['hasValue' ]:
419
419
command ['target' ] = self .getToken ()
420
420
else :
421
- FatalError (self .compiler , f'Variable " { symbolRecord [ "name" ] } " does not hold a value' )
421
+ NoValueError (self .compiler , symbolRecord )
422
422
if self .nextIs ('from' ):
423
423
if self .nextIs ('url' ):
424
424
url = self .nextValue ()
@@ -629,7 +629,7 @@ def k_increment(self, command):
629
629
command ['target' ] = self .getToken ()
630
630
self .add (command )
631
631
return True
632
- self .warning (f'Core.increment: Variable " { symbolRecord ["name" ]} " does not hold a value' )
632
+ self .warning (f'Core.increment: Variable { symbolRecord ["name" ]} does not hold a value' )
633
633
return False
634
634
635
635
def r_increment (self , command ):
@@ -829,13 +829,13 @@ def k_negate(self, command):
829
829
command ['target' ] = self .getToken ()
830
830
self .add (command )
831
831
return True
832
- self .warning (f'Core.negate: Variable " { symbolRecord ["name" ]} " does not hold a value' )
832
+ self .warning (f'Core.negate: Variable { symbolRecord ["name" ]} does not hold a value' )
833
833
return False
834
834
835
835
def r_negate (self , command ):
836
836
symbolRecord = self .getVariable (command ['target' ])
837
837
if not symbolRecord ['hasValue' ]:
838
- RuntimeError (self .program , f' { symbolRecord [ "name" ] } does not hold a value' )
838
+ NoValueRuntimeError (self .program , symbolRecord )
839
839
return None
840
840
value = self .getSymbolValue (symbolRecord )
841
841
if value == None :
@@ -937,7 +937,7 @@ def k_pop(self, command):
937
937
def r_pop (self , command ):
938
938
symbolRecord = self .getVariable (command ['target' ])
939
939
if not symbolRecord ['hasValue' ]:
940
- RuntimeError (self .program , f' { symbolRecord [ "name" ] } does not hold a value' )
940
+ NoValueRuntimeError (self .program , symbolRecord )
941
941
stackRecord = self .getVariable (command ['from' ])
942
942
stack = self .getSymbolValue (stackRecord )
943
943
v = stack .pop ()
@@ -1091,7 +1091,7 @@ def r_put(self, command):
1091
1091
return - 1
1092
1092
symbolRecord = self .getVariable (command ['target' ])
1093
1093
if not symbolRecord ['hasValue' ]:
1094
- RuntimeError (self .program , f' { symbolRecord [ "name" ] } does not hold a value' )
1094
+ NoValueRuntimeError (self .program , symbolRecord )
1095
1095
return - 1
1096
1096
self .putSymbolValue (symbolRecord , value )
1097
1097
return self .nextPC ()
@@ -1406,13 +1406,13 @@ def k_shuffle(self, command):
1406
1406
command ['target' ] = self .getToken ()
1407
1407
self .add (command )
1408
1408
return True
1409
- self .warning (f'Core.negate: Variable " { symbolRecord ["name" ]} " does not hold a value' )
1409
+ self .warning (f'Core.negate: Variable { symbolRecord ["name" ]} does not hold a value' )
1410
1410
return False
1411
1411
1412
1412
def r_shuffle (self , command ):
1413
1413
symbolRecord = self .getVariable (command ['target' ])
1414
1414
if not symbolRecord ['hasValue' ]:
1415
- RuntimeError (self .program , f' { symbolRecord [ "name" ] } does not hold a value' )
1415
+ NoValueRuntimeError (self .program , symbolRecord )
1416
1416
return None
1417
1417
value = self .getSymbolValue (symbolRecord )
1418
1418
if value == None :
@@ -1735,7 +1735,7 @@ def r_write(self, command):
1735
1735
def incdec (self , command , mode ):
1736
1736
symbolRecord = self .getVariable (command ['target' ])
1737
1737
if not symbolRecord ['hasValue' ]:
1738
- RuntimeError (self .program , f' { symbolRecord [ "name" ] } does not hold a value' )
1738
+ NoValueRuntimeError (self .program , symbolRecord )
1739
1739
value = self .getSymbolValue (symbolRecord )
1740
1740
if value == None :
1741
1741
RuntimeError (self .program , f'{ symbolRecord ["name" ]} has not been initialised' )
@@ -1805,7 +1805,7 @@ def compileValue(self):
1805
1805
if symbolRecord ['hasValue' ]:
1806
1806
value ['target' ] = symbolRecord ['name' ]
1807
1807
return value
1808
- self .warning (f'Core.compileValue: Token \' { self . getToken () } \' does not hold a value' )
1808
+ self .warning (f'Core.compileValue: Token { symbolRecord [ "name" ] } does not hold a value' )
1809
1809
return None
1810
1810
1811
1811
if token == 'property' :
@@ -1816,7 +1816,7 @@ def compileValue(self):
1816
1816
if symbolRecord ['hasValue' ]:
1817
1817
value ['target' ] = symbolRecord ['name' ]
1818
1818
return value
1819
- FatalError (self .compiler , 'Variable does not hold a value' )
1819
+ NoValueError (self .compiler , symbolRecord )
1820
1820
return None
1821
1821
1822
1822
if token == 'arg' :
0 commit comments