strangeStrings.py (1791B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\common\script\sys\strangeStrings.py 2 from future.utils import raise_ 3 import stackless 4 5 class A: 6 __module__ = 'sys' 7 __guid__ = 'sys.A' 8 __passbyvalue__ = 1 9 10 def __call__(self, messageID, formatDict = None): 11 s = sm.StartService('agentMgr').GetStaticBlob(messageID) 12 if formatDict: 13 s = s % formatDict 14 if type(s) is unicode: 15 r = AgentUnicode(s) 16 elif type(s) is str: 17 r = AgentString(s) 18 else: 19 try: 20 r = AgentUnicode(unicode(s)) 21 except: 22 raise_(TypeError, "Can't unpickle strange string of type %s" % type(s)) 23 24 r.messageID = messageID 25 if formatDict: 26 r.formatDict = formatDict 27 return r 28 29 30 class AgentString(str): 31 __module__ = 'sys' 32 __guid__ = 'sys.AgentString' 33 34 def __reduce__(self): 35 if stackless.getcurrent().frame.f_back.f_code.co_name == 'SaveConfig_170472': 36 if hasattr(self, 'messageID'): 37 if getattr(self, 'formatDict', False): 38 return (A(), (self.messageID, self.formatDict)) 39 else: 40 return (A(), (self.messageID,)) 41 return (str, (str(self),)) 42 43 44 class AgentUnicode(unicode): 45 __module__ = 'sys' 46 __guid__ = 'sys.AgentUnicode' 47 48 def __reduce__(self): 49 if stackless.getcurrent().frame.f_back.f_code.co_name == 'SaveConfig_170472': 50 if hasattr(self, 'messageID'): 51 if getattr(self, 'formatDict', False): 52 return (A(), (self.messageID, self.formatDict)) 53 else: 54 return (A(), (self.messageID,)) 55 return (unicode, (unicode(self),))