This PR aims to fix the multi term infix operations processing. We're now able to process these operations and create the corresponding gates if necessary.
Changes
Remove every tuple return and replace with Result
Implement Result return on functions without return, in order to remove unwraps and improve error handling.
Update execute_expression to return a value of the processed expression.
Update execute_infix_op to run the operation and return the result.
Fix substitution handling in execute_statement.
Remove unused variable name argument from execute_expression and traverse_expression.
Description
This PR aims to fix the multi term infix operations processing. We're now able to process these operations and create the corresponding gates if necessary.
Changes
Result
Result
return on functions without return, in order to remove unwraps and improve error handling.execute_expression
to return a value of the processed expression.execute_infix_op
to run the operation and return the result.execute_statement
.execute_expression
andtraverse_expression
.ProgramError
.declare_auto_signal
in the runtime.