Jamie Lokier b16aa2f1f7
RPC and GraphQL: Change call op to go through unified EVM runner
Simplify `call` to use `runComputation`; drop other code.

The RPC/GraphQL `call` operation differs in many ways from regular transaction
calls.  The following flags are set, to disable various steps in processing.
All four are true (disabling the corresponding step) for `call`:

- `noIntrinsic`:  Don't charge intrinsic gas.
- `noAccessList`: Don't initialise EIP2929 access list.
- `noGasCharge`:  Don't charge sender account for gas.
- `noRefund`:     Don't apply gas refund/burn rule.

Interestingly, the RPC/GraphQL `estimateGas` operation doesn't behave so
differently from regular transactions.  It might be that not all these steps
should be disabled for `call` either.  But until we investigate what
RPC/GraphQL clients are expecting, keep the same behaviour as before.

Signed-off-by: Jamie Lokier <jamie@shareable.org>
2021-05-29 08:23:20 +01:00
..
2021-05-19 16:35:13 +07:00
2021-05-26 11:12:52 +01:00
2019-11-13 21:49:39 +07:00
2020-01-20 18:36:58 +02:00
2019-01-28 12:38:23 +02:00
2018-05-28 13:22:28 +03:00
2021-04-28 15:24:14 +03:00
2019-04-17 03:56:28 +02:00
2020-07-21 00:16:59 +07:00
2021-05-16 19:54:48 +07:00
2019-11-13 21:49:39 +07:00