``if_expr`` returns the ``if`` expression which depending on condition ``operand`` jumps to the LowLevelILLabel ``t`` when the condition expression ``operand`` is non-zero and ``f`` when it's zero. :param ExpressionIndex operand: comparison expression to evaluate. :param LowLevelILLabel t:
( self, operand: ExpressionIndex, t: LowLevelILLabel, f: LowLevelILLabel, loc: Optional['ILSourceLocation'] = None )
| 5835 | return ExpressionIndex(core.BNLowLevelILGoto(self.handle, label.handle)) |
| 5836 | |
| 5837 | def if_expr( |
| 5838 | self, operand: ExpressionIndex, t: LowLevelILLabel, f: LowLevelILLabel, |
| 5839 | loc: Optional['ILSourceLocation'] = None |
| 5840 | ) -> ExpressionIndex: |
| 5841 | """ |
| 5842 | ``if_expr`` returns the ``if`` expression which depending on condition ``operand`` jumps to the LowLevelILLabel |
| 5843 | ``t`` when the condition expression ``operand`` is non-zero and ``f`` when it's zero. |
| 5844 | |
| 5845 | :param ExpressionIndex operand: comparison expression to evaluate. |
| 5846 | :param LowLevelILLabel t: Label for the true branch |
| 5847 | :param LowLevelILLabel f: Label for the false branch |
| 5848 | :param ILSourceLocation loc: location of returned expression |
| 5849 | :return: the ExpressionIndex for the if expression |
| 5850 | :rtype: ExpressionIndex |
| 5851 | """ |
| 5852 | if loc is not None: |
| 5853 | return ExpressionIndex(core.BNLowLevelILIfWithLocation(self.handle, operand, t.handle, f.handle, loc.address, loc.source_operand)) |
| 5854 | else: |
| 5855 | return ExpressionIndex(core.BNLowLevelILIf(self.handle, operand, t.handle, f.handle)) |
| 5856 | |
| 5857 | def mark_label(self, label: LowLevelILLabel) -> None: |
| 5858 | """ |
no outgoing calls
no test coverage detected