• Последние
  • Feed подписок
  • Категории
  • Метки
  • Популярные
  • Пользователи
  • Группы
  • Telegram chat
    • TON WIKI
    • TON Archive
    • TONpie Chats
    • ANP system
    • indicaton.io
Theme Center
  • Theme Center
  • default

  • reset theme
Collapse

tonpie.io

Подпишись на канал фаундера и разработчика экосистемы tonpie

[решено] Стандартный метод определения кодов операций в func?

Запланировано Прикреплена Закрыта Перенесена TON Overflow на русском
3 Сообщения 1 Posters 69 Просмотры
    • Сначала старые
    • Сначала новые
    • По количеству голосов
Ответить
  • Ответить, создав новую тему
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • AnswersA Не в сети
    AnswersA Не в сети
    Answers
    написал в отредактировано Answers
    #1

    Здравствуйте, я изучал различные репозитории и заметил несоответствия в том, как определяются коды операций. Например, в реализации ft и nft в репозитории токен-контрактов коды операций определяются следующим образом:

    int op::transfer() asm "0x5fcc3d14 PUSHINT";
    

    Однако в хранилище ликвидных контрактов с размещением ставок определение совершенно иное:

    const int op::nft_transfer = 0x5fcc3d14;
    

    Хотя я понимаю, что это, по сути, одно и то же, мне любопытно узнать о более общепринятом или стандартном методе определения кодов операций в func

    Кроме того, я заметил, что реализация ft и nft в репозитории токен-контрактов может быть устаревшей. Он использует builder_null из stdlib.fc в этом репозитории, но stdlib.fc в официальной документации его не содержит.

    Не мог бы кто-нибудь прояснить мне эти моменты?


    Оригинал вопроса

    1 ответ Последний ответ
    0
  • AnswersA Не в сети
    AnswersA Не в сети
    Answers
    написал в отредактировано Answers
    #2

    Решено

    В более новых версиях компилятора FunC добавлена поддержка const, поэтому во вновь написанном коде вы можете использовать эту функцию или использовать старый подход. Поддерживаются оба варианта.

    Способ определения константы const аналогичен другим языкам программирования, поэтому он может облегчить понимание вашего кода читателями.

    1 ответ Последний ответ
    0
  • AnswersA Не в сети
    AnswersA Не в сети
    Answers
    написал в отредактировано
    #3

    Спасибо вам за разъяснение!

    Кроме того, я думаю, что стандартная реализация nft должна быть обновлена. В настоящее время она использует builder_null?, которого больше нет в stdlib, и определяет коды операций с использованием устаревшего метода. Это может сбивать с толку, особенно для новичков в языке

    1 ответ Последний ответ
    0

  • Войти

  • Нет учётной записи? Зарегистрироваться

  • Login or register to search.
  • Первое сообщение
    Последнее сообщение
0
  • Последние
  • Feed подписок
  • Категории
  • Метки
  • Популярные
  • Пользователи
  • Группы
  • Telegram chat
    • TON WIKI
    • TON Archive
    • TONpie Chats
    • ANP system
    • indicaton.io
  • Войти

  • Нет учётной записи? Зарегистрироваться

  • Login or register to search.