В общем, если мы будем следовать коду в common/utils.func (https://github.com/ston-fi/dex-core/blob/main/contracts/common/utils.func), мы получим следующий код:
() force_chain(int workchain, slice address, int error_code) impure inline { (int wc) = get_workchain(address); throw_unless(error_code, wc == workchain); }Насколько мне известно, эта функция гарантирует, что код контракта выполняется только в определенной рабочей цепочке. Поскольку TVM - это конструкция, основанная на нескольких цепочках, то есть на сегментной цепочке, на данный момент она ограничена только одной боковой цепочкой. Я не уверен в том, как мы можем расширить эту тему.
Для получения дополнительной информации вы можете проверить:
https://docs.ton.org/learn/glossary#workchain https://docs.ton.org/learn/overviews/ton-blockchain#workchain-blockchain-with-your-own-rules