| 945 | } |
| 946 | |
| 947 | FunctionType const* UnaryOperation::userDefinedFunctionType() const |
| 948 | { |
| 949 | if (*annotation().userDefinedFunction == nullptr) |
| 950 | return nullptr; |
| 951 | |
| 952 | FunctionDefinition const* userDefinedFunction = *annotation().userDefinedFunction; |
| 953 | return dynamic_cast<FunctionType const*>( |
| 954 | userDefinedFunction->libraryFunction() ? |
| 955 | userDefinedFunction->typeViaContractName() : |
| 956 | userDefinedFunction->type() |
| 957 | ); |
| 958 | } |
| 959 | |
| 960 | FunctionType const* BinaryOperation::userDefinedFunctionType() const |
| 961 | { |