2 个版本
0.1.0 | 2022年8月20日 |
---|
#81 in #anchor
165KB
4K SLoC
原生到 Anchor
Native To Anchor(nta) 是一个 CLI 工具,可以帮助您从原生 Solana 程序生成 Anchor IDLs 和客户端。
安装
- 使用 cargo 安装
cargo install native-to-anchor
或者
- 从源代码构建
git clone https://github.com/acheroncrypto/native-to-anchor.git
cd native-to-anchor/generator
cargo build --release
使用以下命令查看可用的命令
native-to-anchor
注意:您可以通过以下命令查看任何命令的可选参数
native-to-anchor <COMMAND_NAME> --help
示例将假设您已使用 cargo 安装。如果您已从源代码构建,可以通过运行二进制文件或相应地添加别名来执行示例。
生成
example
目录中有一个示例教程。您还可以查看 client
目录以查看生成的包及其测试。
生成 IDL
您可以使用以下命令轻松从 Solana 程序创建 Anchor IDL
native-to-anchor idl <PATH_TO_SOLANA_PROGRAM>
生成包
拥有 IDL 很好,但仅凭 IDL 无法进行程序交互。幸运的是,此工具将创建一个您可以将它导入到项目中并与原生 Solana 程序交互的包。
native-to-anchor package <PATH_TO_SOLANA_PROGRAM>
注意:在以下情况下,生成的代码可能不正确:不支持或未知类型(例如,类型在程序包外部定义)、序列化/反序列化差异或自定义账户特性行实现。一些 SPL 程序存在这些问题,您可以通过查看 client/packages
来了解如何处理。在此过程中可能会出现很多问题,尝试列出所有问题是不明智的。
支持的序列化/反序列化工具
许可证
在 MIT 许可下。
依赖项
~5–15MB
~154K SLoC