Запустить пример Rhea

Как запустить пример транзакции Rhea, включая вспомогательные методы и ожидаемый вывод.

Транзакция Rhea инкапсулирует одну EVM L2 транзакцию внутри транзакции Solana.

Эта функциональность обеспечивает справедливую последовательность транзакций rollup.

Пополните необходимые кошельки

Убедитесь, что от адреса (0xae600d1f94680ef43ab12f8d618f8aafc208fe25) имеет достаточные средства в Rome Devnet Esquiline (ID цепи 121212).

В противном случае, используйте инструкции по этой ссылке для финансирования этого кошелька.

Запустить пример Rhea

RUST_LOG=info cargo run --example rhea

Пример вывода

INFO rhea: https://explorer.solana.com/tx/5xpKQjx3f9Qv25h3Sx88fekSCiH1hRywKbDm8EMTqvY8AVPv5xUg9TXBrkUc4P3uvJohbvSCiERCP5J4edUwgzKY?cluster=devnet

В результатах показано EVM L2 транзакция, инкапсулированная внутри одной транзакции Solana.

Транзакция Solana

Обозреватель блоков Solana Devnetarrow-up-right показывает транзакцию Rhea Solana ниже.

Логи инструкции №3 показывают перевод баланса с кошелька ae600d1f94680ef43ab12f8d618f8aafc208fe25 на кошелёк b94f5374fce5edbc8e2a8697c15331677e6ebf0b.

L2 транзакция

Обозреватель блоков Rome Esquilinearrow-up-right показывает соответствующую L2-транзакцию ниже между теми же кошельками от ae600d1f94680ef43ab12f8d618f8aafc208fe25 до b94f5374fce5edbc8e2a8697c15331677e6ebf0b.

Объяснение используемых методов

Ниже мы объясняем методы, используемые в rome-sdk/examples/rhea.rs.

Основные методы

Структура Rome будет использована для составления транзакций. Инициализируйте её с вашей конфигурацией:

Создайте транзакцию RheaTx и затем составьте её с использованием структуры транзакции Rome:

Отправьте транзакцию в сеть Solana:

Вспомогательные методы

Чтобы включить трассировку и логирование для облегчения отладки, инициализируйте подписчик трассировки с помощью:

Логируйте соответствующую информацию используя:

Создайте Ethereum-кошелёк с помощью:

Сформируйте транзакцию перевода используя:

Шаги, задействованные в построении транзакции, следующие:

  • Получить до и от адреса

  • Получить nonce

  • Создать запрос транзакции (с использованием библиотеки ethers)

  • Оценить комиссии за газ

  • Подписать транзакцию

Последнее обновление

Это было полезно?