MCPcopy Index your code
hub / github.com/nodejs/node / EvalExpression

Method EvalExpression

deps/v8/tools/grokdump.py:3765–3782  ·  view source on GitHub ↗
(self, expr)

Source from the content-addressed store, hash-verified

3763 self.u_num = 0
3764
3765 def EvalExpression(self, expr):
3766 # Auto convert hex numbers to a python compatible format
3767 if expr[:2] == "00":
3768 expr = "0x"+expr
3769 result = None
3770 try:
3771 # Ugly hack to patch in register values.
3772 registers = [register
3773 for register,value in self.reader.ContextDescriptor().fields]
3774 registers.sort(key=lambda r: len(r))
3775 registers.reverse()
3776 for register in registers:
3777 expr = expr.replace("$"+register, str(self.reader.Register(register)))
3778 result = eval(expr)
3779 except Exception as e:
3780 print("**** Could not evaluate '%s': %s" % (expr, e))
3781 raise e
3782 return result
3783
3784 def ParseAddressExpr(self, expr):
3785 address = 0;

Callers 2

ParseAddressExprMethod · 0.95
do_printMethod · 0.95

Calls 6

strFunction · 0.85
ContextDescriptorMethod · 0.80
sortMethod · 0.80
RegisterMethod · 0.80
printFunction · 0.70
evalFunction · 0.50

Tested by

no test coverage detected