# @return: True or False if RealValue is False\r
# Evaluated value of string format if RealValue is True\r
#\r
- def __call__(self, RealValue=False):\r
+ def __call__(self, RealValue=False, Depth=0):\r
if self._NoProcess:\r
return self._Expr\r
\r
+ self._Depth = Depth\r
+\r
self._Expr = self._Expr.strip()\r
- if RealValue:\r
+ if RealValue and Depth == 0:\r
self._Token = self._Expr\r
if self.__IsNumberToken():\r
return self._Expr\r
Ex = BadExpression(ERR_PCD_RESOLVE % self._Token)\r
Ex.Pcd = self._Token\r
raise Ex\r
- self._Token = ValueExpression(self._Symb[self._Token], self._Symb)(True)\r
+ self._Token = ValueExpression(self._Symb[self._Token], self._Symb)(True, self._Depth+1)\r
if type(self._Token) != type(''):\r
self._LiteralToken = hex(self._Token)\r
return\r
if Match and not Expr[Match.end():Match.end()+1].isalnum() \\r
and Expr[Match.end():Match.end()+1] != '_':\r
self._Idx += Match.end()\r
- self._Token = ValueExpression(GuidStringToGuidStructureString(Expr[0:Match.end()]))(True)\r
+ self._Token = ValueExpression(GuidStringToGuidStructureString(Expr[0:Match.end()]))(True, self._Depth+1)\r
return self._Token\r
elif self.__IsIdChar(Ch):\r
return self.__GetIdToken()\r