18 个版本 (9 个破坏性版本)
0.21.0 | 2024 年 2 月 20 日 |
---|---|
0.19.2 | 2023 年 10 月 19 日 |
0.18.0 | 2023 年 7 月 28 日 |
0.13.0 | 2023 年 3 月 28 日 |
#1534 in 魔法豆
每月下载量 317
在 5 个 crate(4 个直接) 中使用
385KB
9K SLoC
摘要
此包包含与 Abstract 合约交互所需的一切。
此包包含
- 抽象合约接口消息
- 抽象合约状态
- 抽象对象(建议使用在 Abstract-SDK 中重新导出的版本)
用法
// Import a contract Exec/Init/Query message
abstract_core::contract::ExecuteMsg
// Import a contract state lay-out
abstract_core::contract::state::STATE
// Import a state object
abstract_core::object::ProxyValue;
消息
每个接口都有单独的注释。
状态
每个状态布局也都有单独的说明
对象
抽象对象用于存储信息以及辅助函数。我们提供这些作为导入,以便可以从外部(使用原始查询)检索数据。
如果您想在您的合约中使用这些对象,我们建议使用抽象-sdk 包。
lib.rs
:
抽象账户
Abstract 接口是 Abstract 智能合约框架的接口定义 crate。
描述
此 crate 提供了与 Abstract 合约集成或编写所需的关键工具。
消息
所有接口消息结构体都定义在此,因此可以导入。
use abstract_core::manager::ExecuteMsg;
资产
cw-asset
用于资产管理。如果消息请求 Asset 字段的人类可读 String 值,则需要提供可读的 ans_host 键。支持的资产和合约的完整列表给出 在此。合约将内部处理地址检索。
状态
每个合约的内部状态也包含在这个crate中。这确保了内部状态的更改可以轻松地被发现。它还允许通过在这些状态上执行原始查询来实现合约之间紧密和低gas的集成。合约的状态对象可以导入并使用,如下所示:
use crate::manager::state::ACCOUNT_ID
let account_id = ACCOUNT_ID.query(querier, manager_address).unwrap();
在crate::objects
中,也包含了这个包内部存储的对象。
名称
抽象合约名称在内部和版本管理中使用。为了便于使用,它们被导出。
use abstract_core::PROXY;
错误
AbstractError
封装了由StdError
或AssetError
抛出的错误。它也用于对象中抛出错误。
依赖
~4–17MB
~197K SLoC