|
|
|
@ -1,3 +1,4 @@ |
|
|
|
|
from slither.core.declarations import Contract |
|
|
|
|
from slither.core.solidity_types.type import Type |
|
|
|
|
from slither.slithir.operations.lvalue import OperationWithLValue |
|
|
|
|
from slither.slithir.utils.utils import is_valid_lvalue, is_valid_rvalue |
|
|
|
@ -7,7 +8,7 @@ class TypeConversion(OperationWithLValue): |
|
|
|
|
|
|
|
|
|
def __init__(self, result, variable, variable_type): |
|
|
|
|
super().__init__() |
|
|
|
|
assert is_valid_rvalue(variable) |
|
|
|
|
assert is_valid_rvalue(variable) or isinstance(variable, Contract) |
|
|
|
|
assert is_valid_lvalue(result) |
|
|
|
|
assert isinstance(variable_type, Type) |
|
|
|
|
|
|
|
|
|