Hadrien Croubois d4fb3a89f9 4.6.0 3 rokov pred
..
amb d4fb3a89f9 4.6.0 3 rokov pred
arbitrum d4fb3a89f9 4.6.0 3 rokov pred
optimism d4fb3a89f9 4.6.0 3 rokov pred
polygon d4fb3a89f9 4.6.0 3 rokov pred
CrossChainEnabled.sol d4fb3a89f9 4.6.0 3 rokov pred
README.adoc 668a648bc6 Add utilities for CrossChain messaging (#3183) 3 rokov pred
errors.sol d4fb3a89f9 4.6.0 3 rokov pred

README.adoc

= Cross Chain Awareness

[.readme-notice]
NOTE: This document is better viewed at https://docs.openzeppelin.com/contracts/api/crosschain

This directory provides building blocks to improve cross-chain awareness of smart contracts.

- {CrossChainEnabled} is an abstraction that contains accessors and modifiers to control the execution flow when receiving cross-chain messages.

== CrossChainEnabled specializations

The following specializations of {CrossChainEnabled} provide implementations of the {CrossChainEnabled} abstraction for specific bridges. This can be used to complexe cross-chain aware components such as {AccessControlCrossChain}.

{{CrossChainEnabledAMB}}

{{CrossChainEnabledArbitrumL1}}

{{CrossChainEnabledArbitrumL2}}

{{CrossChainEnabledOptimism}}

{{CrossChainEnabledPolygonChild}}

== Libraries for cross-chain

In addition to the {CrossChainEnable} abstraction, cross-chain awareness is also available through libraries. These libraries can be used to build complex designs such as contracts with the ability to interact with multiple bridges.

{{LibAMB}}

{{LibArbitrumL1}}

{{LibArbitrumL2}}

{{LibOptimism}}