import sys from slither.slither import Slither from slither.slithir.convert import convert_expression if len(sys.argv) != 4: print( 'python.py function_called.py functions_called.sol Contract function()' ) exit(-1) # Init slither slither = Slither(sys.argv[1]) # Get the contract contract = slither.get_contract_from_name(sys.argv[2]) # Get the variable test = contract.get_function_from_signature(sys.argv[3]) #test = contract.get_function_from_signature('two()') nodes = test.nodes for node in nodes: if node.expression: print('Expression:\n\t{}'.format(node.expression)) irs = convert_expression(node.expression) print('IR expressions:') for ir in irs: print('\t{}'.format(ir)) print()
def slithir_generation(self): if self.expression: expression = self.expression self._irs = convert_expression(expression, self) self._find_read_write_call()
def slithir_generation(self): if self.expression: expression = self.expression self._irs = convert_expression(expression, self)