COOPENOMICS
v1
Кооперативная Экономика
|
Функции | |
void | eosiosystem::system_contract::buyrambytes (const name &payer, const name &receiver, uint32_t bytes) |
Покупает точное количество RAM в байтах. Покупает точное количество байт RAM и выставляет счет плательщику по текущей рыночной цене. Подробнее... | |
void | eosiosystem::system_contract::buyram (const name &payer, const name &receiver, const asset &quant) |
Покупает RAM для указанного аккаунта. При покупке RAM плательщик безвозвратно передает токены системному контракту, и только получатель может вернуть токены через действие sellram. Получатель оплачивает хранение всех записей базы данных, связанных с этим действием. RAM - это ограниченный ресурс, предложение которого определяется глобальным свойством max_ram_size. RAM оценивается с использованием алгоритма Bancor с постоянным резервным соотношением 100:1. Подробнее... | |
void | eosiosystem::system_contract::sellram (const name &account, int64_t bytes) |
Продает RAM обратно в систему. Позволяет аккаунту продать свои байты RAM обратно в систему и получить токены. Подробнее... | |
void | eosiosystem::system_contract::delegatebw (const name &from, const name &receiver, const asset &stake_net_quantity, const asset &stake_cpu_quantity, bool transfer) |
Делегирует пропускную способность сети и CPU другому аккаунту. Позволяет аккаунту застейкать токены для предоставления ресурсов сети и CPU другому аккаунту. Подробнее... | |
void | eosiosystem::system_contract::undelegatebw (const name &from, const name &receiver, const asset &unstake_net_quantity, const asset &unstake_cpu_quantity) |
Отменяет делегирование пропускной способности сети и CPU. Позволяет аккаунту отменить стейкинг токенов для ресурсов сети и CPU. Подробнее... | |
void | eosiosystem::system_contract::refund (const name &owner) |
Возвращает застейканные токены после истечения периода задержки. Позволяет аккаунту получить обратно свои токены после отмены делегирования. Подробнее... | |
void | eosiosystem::system_contract::setram (uint64_t max_ram_size) |
Устанавливает максимальный размер RAM в системе. Увеличивает количество RAM доступного для продажи на основе изменения максимального размера RAM. Подробнее... | |
void | eosiosystem::system_contract::update_ram_supply () |
Обновляет предложение RAM на основе времени с последнего увеличения. Увеличивает количество RAM доступного для продажи на основе времени блоков. Подробнее... | |
void | eosiosystem::system_contract::setramrate (uint16_t bytes_per_block) |
Устанавливает скорость увеличения RAM в байтах за блок. Подробнее... | |
void | eosiosystem::system_contract::setparams (const blockchain_parameters_t ¶ms) |
Устанавливает параметры блокчейна. Обновляет глобальные параметры блокчейна, включая лимиты блоков, транзакций и авторизаций. Подробнее... | |
void | eosiosystem::system_contract::setpriv (const name &account, uint8_t is_priv) |
Устанавливает привилегированный статус для аккаунта. Позволяет включить или выключить привилегированный статус для аккаунта. Подробнее... | |
void | eosiosystem::system_contract::setalimits (const name &account, int64_t ram_bytes, int64_t net_weight, int64_t cpu_weight) |
Устанавливает лимиты ресурсов для аккаунта. Устанавливает абсолютные лимиты RAM, NET и CPU для указанного аккаунта. Поддерживает только аккаунты с неограниченными ресурсами. Подробнее... | |
void | eosiosystem::system_contract::setacctram (const name &account, const std::optional< int64_t > &ram_bytes) |
Устанавливает лимиты RAM для аккаунта. Устанавливает лимит RAM в абсолютных байтах для указанного аккаунта. Подробнее... | |
void | eosiosystem::system_contract::setacctnet (const name &account, const std::optional< int64_t > &net_weight) |
Устанавливает лимиты NET для аккаунта. Устанавливает пропорциональный лимит NET для указанного аккаунта. Подробнее... | |
void | eosiosystem::system_contract::setacctcpu (const name &account, const std::optional< int64_t > &cpu_weight) |
Устанавливает лимиты CPU для аккаунта. Устанавливает пропорциональный лимит CPU для указанного аккаунта. Подробнее... | |
void | eosiosystem::system_contract::activate (const eosio::checksum256 &feature_digest) |
Активирует протокольную функцию. Активирует протокольную функцию по хешу перед деплоем системного контракта с большим количеством функций. Подробнее... | |
void | eosiosystem::system_contract::rmvproducer (const name &producer) |
Удаляет продюсера по имени. Деактивирует продюсера по имени, если не найден - вызывает ошибку. Подробнее... | |
void | eosiosystem::system_contract::updtrevision (uint8_t revision) |
Обновляет текущую ревизию. Обновляет текущую ревизию. Ревизия должна быть увеличена на 1 по сравнению с текущей. Текущая ревизия не может быть выше 254 и должна быть меньше или равна 1. Подробнее... | |
void | eosiosystem::system_contract::createaccnt (const name coopname, const name new_account_name, authority owner, authority active) |
Создает новый аккаунт через кооператив. Позволяет кооперативу создать новый аккаунт с указанными владельцем и активными разрешениями. Подробнее... | |
void | eosiosystem::system_contract::init (uint64_t version, const symbol &core) |
Инициализирует системный контракт для версии и символа. Действие выполняется успешно только когда: Подробнее... | |
void | eosiosystem::system_contract::limitauthchg (const name &account, const std::vector< name > &allow_perms, const std::vector< name > &disallow_perms) |
Ограничивает или отменяет ограничения на изменение авторизации. Позволяет аккаунту включиться в ограничения или выйти из них для действий updateauth, deleteauth, linkauth и unlinkauth. Если allow_perms не пуст, то authorized_by должен быть в векторе. Если disallow_perms не пуст, то authorized_by не должен быть в векторе. Если оба вектора пусты, то аккаунт выходит из ограничений. Подробнее... | |
void | eosiosystem::system_contract::bidname (const name &bidder, const name &newname, const asset &bid) |
Размещает ставку на премиум имя. Позволяет аккаунту разместить ставку на премиум имя. Ставки можно размещать только на имена длиной не более 5 символов без точек. Ставка должна быть больше текущей на 10%. Подробнее... | |
void | eosiosystem::system_contract::bidrefund (const name &bidder, const name &newname) |
Возвращает ставку на имя. Позволяет аккаунту получить обратно сумму своей ставки на имя, если она была перебита. Подробнее... | |
void | eosiosystem::system_contract::cfgpowerup (powerup_config &args) |
Конфигурирует систему аренды ресурсов. Настраивает параметры рынка ресурсов powerup, включая количество дней и минимальную комиссию. Рынок становится доступным при первом вызове этого действия. Подробнее... | |
void | eosiosystem::system_contract::powerupexec (const name &user, uint16_t max) |
Обрабатывает очередь powerup и обновляет состояние. Действие не выполняет ничего связанного с конкретным пользователем, а обрабатывает очередь заказов powerup и обновляет состояние рынка ресурсов. Подробнее... | |
void | eosiosystem::system_contract::powerup (const name &payer, const name &receiver, uint32_t days, const asset &payment, const bool transfer=false) |
Аренда ресурсов NET и CPU через систему powerup. Позволяет аккаунту арендовать ресурсы сети и CPU на определенное количество дней. Ресурсы предоставляются получателю, а плательщик оплачивает их стоимость. Подробнее... | |
void | eosiosystem::system_contract::onblock (ignore< block_header > header) |
Действие при блоке. Это специальное действие срабатывает при применении блока данным продюсером и не может быть сгенерировано из любого другого источника. Используется для оплаты продюсеров и расчета пропущенных блоков других продюсеров. Оплата продюсера депонируется в баланс ставки продюсера и может быть выведена со временем. Раз в минуту может обновлять активную конфигурацию продюсера из голосов продюсеров. Действие также заполняет таблицу blockinfo. Подробнее... | |
void | eosiosystem::system_contract::emit (eosio::asset new_emission) |
Выпускает новые токены в фонд. Выпускает указанное количество новых токенов и передает их в сберегательный фонд. Подробнее... | |
void | eosiosystem::system_contract::claimrewards (const name &owner) |
Получает награды за производство блоков и голосование. Позволяет продюсеру получить награды за производство блоков и голосование. Награды можно получать не чаще одного раза в день. Подробнее... | |
void | eosiosystem::system_contract::regproducer (const name &producer, const public_key &producer_key, const std::string &url, uint16_t location) |
Регистрирует блок-продюсера в системе. Создает или обновляет запись продюсера с публичным ключом, URL и локацией. Подробнее... | |
void | eosiosystem::system_contract::regproducer2 (const name &producer, const eosio::block_signing_authority &producer_authority, const std::string &url, uint16_t location) |
Регистрирует блок-продюсера с расширенной авторизацией подписи блоков. Создает или обновляет запись продюсера с блок-подписывающей авторизацией, URL и локацией. Подробнее... | |
void | eosiosystem::system_contract::unregprod (const name &producer) |
Отменяет регистрацию блок-продюсера. Деактивирует продюсера, делая его неактивным в системе. Подробнее... | |
void | eosiosystem::system_contract::voteproducer (const name &voter, const name &proxy, const std::vector< name > &producers) |
Голосует за продюсеров или делегирует голос прокси. Позволяет пользователю голосовать за до 30 продюсеров или делегировать свой голос прокси. Подробнее... | |
void | eosiosystem::system_contract::voteupdate (const name &voter_name) |
Обновляет голоса пользователя на основе текущих застейканных токенов. Пересчитывает вес голоса пользователя и обновляет его голоса за продюсеров. Подробнее... | |
void eosiosystem::system_contract::activate | ( | const eosio::checksum256 & | feature_digest | ) |
Активирует протокольную функцию. Активирует протокольную функцию по хешу перед деплоем системного контракта с большим количеством функций.
feature_digest | Хеш протокольной функции для активации |
eosio.system
void eosiosystem::system_contract::bidname | ( | const name & | bidder, |
const name & | newname, | ||
const asset & | bid | ||
) |
Размещает ставку на премиум имя. Позволяет аккаунту разместить ставку на премиум имя. Ставки можно размещать только на имена длиной не более 5 символов без точек. Ставка должна быть больше текущей на 10%.
bidder | Аккаунт, размещающий ставку |
newname | Имя, на которое делается ставка |
bid | Сумма ставки в системных токенах |
bidder
void eosiosystem::system_contract::bidrefund | ( | const name & | bidder, |
const name & | newname | ||
) |
Возвращает ставку на имя. Позволяет аккаунту получить обратно сумму своей ставки на имя, если она была перебита.
bidder | Аккаунт, который получает возврат |
newname | Имя, на которое была сделана ставка |
bidder
void eosiosystem::system_contract::buyram | ( | const name & | payer, |
const name & | receiver, | ||
const asset & | quant | ||
) |
Покупает RAM для указанного аккаунта. При покупке RAM плательщик безвозвратно передает токены системному контракту, и только получатель может вернуть токены через действие sellram. Получатель оплачивает хранение всех записей базы данных, связанных с этим действием. RAM - это ограниченный ресурс, предложение которого определяется глобальным свойством max_ram_size. RAM оценивается с использованием алгоритма Bancor с постоянным резервным соотношением 100:1.
payer | Аккаунт, который платит за RAM |
receiver | Аккаунт, который получает RAM |
quant | Количество токенов для покупки RAM |
payer
void eosiosystem::system_contract::buyrambytes | ( | const name & | payer, |
const name & | receiver, | ||
uint32_t | bytes | ||
) |
Покупает точное количество RAM в байтах. Покупает точное количество байт RAM и выставляет счет плательщику по текущей рыночной цене.
payer | Аккаунт, который платит за RAM |
receiver | Аккаунт, который получает RAM |
bytes | Точное количество байт RAM для покупки |
payer
void eosiosystem::system_contract::cfgpowerup | ( | powerup_config & | args | ) |
Конфигурирует систему аренды ресурсов. Настраивает параметры рынка ресурсов powerup, включая количество дней и минимальную комиссию. Рынок становится доступным при первом вызове этого действия.
args | Конфигурация powerup с параметрами дней и минимальной комиссии |
eosio.system
void eosiosystem::system_contract::claimrewards | ( | const name & | owner | ) |
Получает награды за производство блоков и голосование. Позволяет продюсеру получить награды за производство блоков и голосование. Награды можно получать не чаще одного раза в день.
owner | Аккаунт продюсера для получения наград |
owner
void eosiosystem::system_contract::createaccnt | ( | const name | coopname, |
const name | new_account_name, | ||
authority | owner, | ||
authority | active | ||
) |
Создает новый аккаунт через кооператив. Позволяет кооперативу создать новый аккаунт с указанными владельцем и активными разрешениями.
coopname | Имя кооператива |
new_account_name | Имя нового аккаунта |
owner | Авторизация владельца |
active | Активная авторизация |
registrator
void eosiosystem::system_contract::delegatebw | ( | const name & | from, |
const name & | receiver, | ||
const asset & | stake_net_quantity, | ||
const asset & | stake_cpu_quantity, | ||
bool | transfer | ||
) |
Делегирует пропускную способность сети и CPU другому аккаунту. Позволяет аккаунту застейкать токены для предоставления ресурсов сети и CPU другому аккаунту.
from | Аккаунт, который делегирует ресурсы |
receiver | Аккаунт, который получает делегированные ресурсы |
stake_net_quantity | Количество токенов для стейкинга сети |
stake_cpu_quantity | Количество токенов для стейкинга CPU |
transfer | Флаг передачи владения токенами |
from
|
private |
Выпускает новые токены в фонд. Выпускает указанное количество новых токенов и передает их в сберегательный фонд.
new_emission | Количество новых токенов для выпуска |
eosio.system
void eosiosystem::system_contract::init | ( | uint64_t | version, |
const symbol & | core | ||
) |
Инициализирует системный контракт для версии и символа. Действие выполняется успешно только когда:
version | Версия, должна быть равна 0 |
core | Системный символ токена |
eosio.system
void eosiosystem::system_contract::limitauthchg | ( | const name & | account, |
const std::vector< name > & | allow_perms, | ||
const std::vector< name > & | disallow_perms | ||
) |
Ограничивает или отменяет ограничения на изменение авторизации. Позволяет аккаунту включиться в ограничения или выйти из них для действий updateauth, deleteauth, linkauth и unlinkauth. Если allow_perms не пуст, то authorized_by должен быть в векторе. Если disallow_perms не пуст, то authorized_by не должен быть в векторе. Если оба вектора пусты, то аккаунт выходит из ограничений.
account | Аккаунт для изменения |
allow_perms | Разрешения, которые могут использовать ограниченные действия |
disallow_perms | Разрешения, которые не могут использовать ограниченные действия |
account
void eosiosystem::system_contract::onblock | ( | ignore< block_header > | header | ) |
Действие при блоке. Это специальное действие срабатывает при применении блока данным продюсером и не может быть сгенерировано из любого другого источника. Используется для оплаты продюсеров и расчета пропущенных блоков других продюсеров. Оплата продюсера депонируется в баланс ставки продюсера и может быть выведена со временем. Раз в минуту может обновлять активную конфигурацию продюсера из голосов продюсеров. Действие также заполняет таблицу blockinfo.
header | Заголовок произведенного блока |
eosio.system
until activation, no new rewards are paid
start the presses
At startup the initial producer may not be one that is registered / elected and therefore there may be no producer object for them.
only update block producers once every minute, block_timestamp is in half seconds
void eosiosystem::system_contract::powerup | ( | const name & | payer, |
const name & | receiver, | ||
uint32_t | days, | ||
const asset & | payment, | ||
const bool | transfer = false |
||
) |
Аренда ресурсов NET и CPU через систему powerup. Позволяет аккаунту арендовать ресурсы сети и CPU на определенное количество дней. Ресурсы предоставляются получателю, а плательщик оплачивает их стоимость.
payer | Аккаунт, который платит за ресурсы |
receiver | Аккаунт, который получает ресурсы |
days | Количество дней доступности ресурсов (должно соответствовать конфигурации рынка) |
payment | Максимальная сумма, которую плательщик готов заплатить |
transfer | Флаг передачи ресурсов (требует специальных прав) |
payer
void eosiosystem::system_contract::powerupexec | ( | const name & | user, |
uint16_t | max | ||
) |
Обрабатывает очередь powerup и обновляет состояние. Действие не выполняет ничего связанного с конкретным пользователем, а обрабатывает очередь заказов powerup и обновляет состояние рынка ресурсов.
user | Любой аккаунт может выполнить это действие |
max | Количество элементов очереди для обработки |
user
void eosiosystem::system_contract::refund | ( | const name & | owner | ) |
Возвращает застейканные токены после истечения периода задержки. Позволяет аккаунту получить обратно свои токены после отмены делегирования.
owner | Аккаунт, который запрашивает возврат токенов |
owner
void eosiosystem::system_contract::regproducer | ( | const name & | producer, |
const public_key & | producer_key, | ||
const std::string & | url, | ||
uint16_t | location | ||
) |
Регистрирует блок-продюсера в системе. Создает или обновляет запись продюсера с публичным ключом, URL и локацией.
producer | Имя аккаунта продюсера |
producer_key | Публичный ключ продюсера |
url | URL продюсера (максимум 512 символов) |
location | Локация продюсера |
producer
void eosiosystem::system_contract::regproducer2 | ( | const name & | producer, |
const eosio::block_signing_authority & | producer_authority, | ||
const std::string & | url, | ||
uint16_t | location | ||
) |
Регистрирует блок-продюсера с расширенной авторизацией подписи блоков. Создает или обновляет запись продюсера с блок-подписывающей авторизацией, URL и локацией.
producer | Имя аккаунта продюсера |
producer_authority | Авторизация подписи блоков продюсера |
url | URL продюсера (максимум 512 символов) |
location | Локация продюсера |
producer
void eosiosystem::system_contract::rmvproducer | ( | const name & | producer | ) |
Удаляет продюсера по имени. Деактивирует продюсера по имени, если не найден - вызывает ошибку.
producer | Аккаунт продюсера для деактивации |
eosio.system
void eosiosystem::system_contract::sellram | ( | const name & | account, |
int64_t | bytes | ||
) |
Продает RAM обратно в систему. Позволяет аккаунту продать свои байты RAM обратно в систему и получить токены.
account | Аккаунт, который продает RAM |
bytes | Количество байт RAM для продажи |
eosio.system
void eosiosystem::system_contract::setacctcpu | ( | const name & | account, |
const std::optional< int64_t > & | cpu_weight | ||
) |
Устанавливает лимиты CPU для аккаунта. Устанавливает пропорциональный лимит CPU для указанного аккаунта.
account | Имя аккаунта, для которого устанавливается лимит ресурсов |
cpu_weight | Пропорциональный лимит CPU на основе (вес / общий_вес_всех_аккаунтов) |
eosio.system
void eosiosystem::system_contract::setacctnet | ( | const name & | account, |
const std::optional< int64_t > & | net_weight | ||
) |
Устанавливает лимиты NET для аккаунта. Устанавливает пропорциональный лимит NET для указанного аккаунта.
account | Имя аккаунта, для которого устанавливается лимит ресурсов |
net_weight | Пропорциональный лимит NET на основе (вес / общий_вес_всех_аккаунтов) |
eosio.system
void eosiosystem::system_contract::setacctram | ( | const name & | account, |
const std::optional< int64_t > & | ram_bytes | ||
) |
Устанавливает лимиты RAM для аккаунта. Устанавливает лимит RAM в абсолютных байтах для указанного аккаунта.
account | Имя аккаунта, для которого устанавливается лимит ресурсов |
ram_bytes | Лимит RAM в абсолютных байтах |
eosio.system
void eosiosystem::system_contract::setalimits | ( | const name & | account, |
int64_t | ram, | ||
int64_t | net, | ||
int64_t | cpu | ||
) |
Устанавливает лимиты ресурсов для аккаунта. Устанавливает абсолютные лимиты RAM, NET и CPU для указанного аккаунта. Поддерживает только аккаунты с неограниченными ресурсами.
account | Имя аккаунта, для которого устанавливаются лимиты ресурсов |
ram | Лимит RAM в абсолютных байтах |
net | Пропорциональный лимит NET на основе (вес / общий_вес_всех_аккаунтов) |
cpu | Пропорциональный лимит CPU на основе (вес / общий_вес_всех_аккаунтов) |
eosio.system
void eosiosystem::system_contract::setparams | ( | const blockchain_parameters_t & | params | ) |
Устанавливает параметры блокчейна. Обновляет глобальные параметры блокчейна, включая лимиты блоков, транзакций и авторизаций.
params | Новые параметры блокчейна |
eosio.system
void eosiosystem::system_contract::setpriv | ( | const name & | account, |
uint8_t | ispriv | ||
) |
Устанавливает привилегированный статус для аккаунта. Позволяет включить или выключить привилегированный статус для аккаунта.
account | Аккаунт для установки привилегированного статуса |
ispriv | 0 для false, > 0 для true |
eosio.system
void eosiosystem::system_contract::setram | ( | uint64_t | max_ram_size | ) |
Устанавливает максимальный размер RAM в системе. Увеличивает количество RAM доступного для продажи на основе изменения максимального размера RAM.
max_ram_size | Новый максимальный размер RAM в байтах |
eosio.system
decreasing ram might result market maker issues
Increase the amount of ram for sale based upon the change in max ram size.
void eosiosystem::system_contract::setramrate | ( | uint16_t | bytes_per_block | ) |
Устанавливает скорость увеличения RAM в байтах за блок.
bytes_per_block | Количество байт RAM, добавляемых за блок |
eosio.system
void eosiosystem::system_contract::undelegatebw | ( | const name & | from, |
const name & | receiver, | ||
const asset & | unstake_net_quantity, | ||
const asset & | unstake_cpu_quantity | ||
) |
Отменяет делегирование пропускной способности сети и CPU. Позволяет аккаунту отменить стейкинг токенов для ресурсов сети и CPU.
from | Аккаунт, который отменяет делегирование |
receiver | Аккаунт, у которого отменяется делегирование |
unstake_net_quantity | Количество токенов для отмены стейкинга сети |
unstake_cpu_quantity | Количество токенов для отмены стейкинга CPU |
from
void eosiosystem::system_contract::unregprod | ( | const name & | producer | ) |
Отменяет регистрацию блок-продюсера. Деактивирует продюсера, делая его неактивным в системе.
producer | Имя аккаунта продюсера для отмены регистрации |
producer
|
private |
Обновляет предложение RAM на основе времени с последнего увеличения. Увеличивает количество RAM доступного для продажи на основе времени блоков.
Increase the amount of ram for sale based upon the change in max ram size.
void eosiosystem::system_contract::updtrevision | ( | uint8_t | revision | ) |
Обновляет текущую ревизию. Обновляет текущую ревизию. Ревизия должна быть увеличена на 1 по сравнению с текущей. Текущая ревизия не может быть выше 254 и должна быть меньше или равна 1.
revision | Ревизия, которая должна быть увеличена на 1 по сравнению с текущей ревизией |
eosio.system
void eosiosystem::system_contract::voteproducer | ( | const name & | voter_name, |
const name & | proxy, | ||
const std::vector< name > & | producers | ||
) |
Голосует за продюсеров или делегирует голос прокси. Позволяет пользователю голосовать за до 30 продюсеров или делегировать свой голос прокси.
voter_name | Имя голосующего |
proxy | Имя прокси (если голос делегируется) |
producers | Список продюсеров для голосования (максимум 30) |
voter_name
void eosiosystem::system_contract::voteupdate | ( | const name & | voter_name | ) |
Обновляет голоса пользователя на основе текущих застейканных токенов. Пересчитывает вес голоса пользователя и обновляет его голоса за продюсеров.
voter_name | Имя голосующего для обновления |
voter_name