20 template <
typename Base>
28 std::make_shared<ccf::js::extensions::MathRandomExtension>());
32 std::make_shared<ccf::js::extensions::ConsoleExtension>());
36 std::make_shared<ccf::js::extensions::ConvertersExtension>());
40 std::make_shared<ccf::js::extensions::CryptoExtension>());
44 std::make_shared<ccf::js::extensions::SnpAttestationExtension>());
48 std::make_shared<ccf::js::extensions::GovExtension>());
52 template <
typename Base>
60 std::make_shared<ccf::js::extensions::KvExtension>(tx));
65 const std::vector<ccf::js::core::JSWrappedValue>& argv)
override
67 auto ret = Base::inner_call(f, argv);
69 Base::template get_extension<ccf::js::extensions::KvExtension>();
70 if (extension !=
nullptr)
72 extension->rethrow_trapped_exceptions();
Definition common_context.h:22
WithCommonExtensions(TxAccess acc)
Definition common_context.h:24
Definition common_context.h:54
ccf::js::core::JSWrappedValue inner_call(const ccf::js::core::JSWrappedValue &f, const std::vector< ccf::js::core::JSWrappedValue > &argv) override
Definition common_context.h:63
WithKVExtension(TxAccess acc, ccf::kv::Tx *tx)
Definition common_context.h:56
TxAccess
Definition tx_access.h:10
Definition wrapped_value.h:13