问题标签 [vyper]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Vyper:兼容使用 python 编写/部署以太坊经典智能合约?
由于Vitalik 认为Python Serpent 编译器已过时且不安全(本次审计和此处也证实了这一点),因此更建议使用Vyper 编译器从 python编写/部署以太坊智能合约。
可以肯定Vyper在Ethereum 去中心化平台上工作,但我想知道Vyper是否也兼容在Ethereum Classic 去中心化平台上部署智能合约?
如果是,如何为此用例设置Vyper ?
如果不是,在Ethereum Classic上部署智能合约的新 python 支持编译器是什么?
arrays - 使用 Rust 创建自定义类型 bytes32 作为 32 位宽的字节数组
bytes32
是一种在 Vyper 中是 32 位宽的字节数组的类型。以下来自https://github.com/ethereum/vyper/blob/master/docs/types.rst#32-bit-wide-byte-array:
32 位宽字节数组
关键字: bytes32
这是一个 32 位宽的字节数组,在其他方面类似于字节数组。
例子:
运营商
其中x
是字节数组,_start
以及_len
是整数值。
我想知道如何在 Rust 中创建这样的 bytes32 作为自定义类型。要创建自定义类型,您使用结构,它是一个数组,但我不确定定义数组的最佳方法是什么。我想过这样做:
但这显然不是理想的,例如可读性,你必须使用一个特定的值,0b00000000
.
python - Python3 中的“变量:值”是什么意思?
我在网上找到的一些 Python3 代码中遇到了以下语法:
注意:这实际上来自 Vyper,它是用于在以太坊上编程的 Python3 的一个子集。Vyper 的开发人员声称所有 Vyper 代码都是有效的 Python3 语法(尽管反过来不正确)
我无法从 Python3 中找到解释这种语法含义的特定文档。
这是做什么的?
ethereum - 支付用户的gas:以太坊
我需要一些帮助。我正在开发一个允许用户保存字符串(映射(地址=>字符串))的智能合约。唯一的问题是,我希望合约为用户保存字符串支付gas。关于如何做的任何想法
smartcontracts - Solidity 地址的 Vyper 等效项(此)
如何在 Vyper 中获取当前合约的地址。在坚固address(this)
中使用。Vyper 中的等价物是什么。
smartcontracts - 从合同 Vyper 创建新合同
有没有办法从合同中创建任何子合同,例如当有人调用“createChildContract()”函数时。在solidity中,简单地使用新的运营商出售问题,vyper怎么样?非常感谢 !
ethereum - 如何在 Vyper 中将字节解码/编码为地址数组?
我正在尝试在 Vyper https://developers.aave.com/#implementing-a-flashloanreceiver-contract中实现 Aave 闪贷接收器,我需要将地址数组作为“字节内存_参数”参数传递给它。任何想法如何将地址数组编码为 web3 中的字节,然后将它们从字节解码回 Vyper 中的地址 [n] 数组?
javascript - Solidity & Truffle - 在 Solidity 和 JavaScript 中自动生成测试用例,最好的选择是什么?优点和缺点?
我创建了新的 ERC-20 令牌,现在想添加测试代码。有没有办法在 SOL 文件中自动生成测试用例?也想知道在 Truffle JavaScript 框架中自动生成测试代码的方式。
我已经用谷歌搜索并得到了一些有用的库,但它不是自动生成的代码。(如mocha或chai)请帮助我。
谢谢
ethereum - Solidity 中 require(send()) 的安全问题
我正在开发一个基于区块链的 uni 项目,我必须审核我们的系统,检查已知攻击等。这是我检查的文件,主要是因为我首先开始处理智能合约问题: 已知攻击以太坊智能合约
我无法理解“Dos With (unexpected) revert attack”部分中使用的示例。我分享代码:
他们说,攻击者可以强制每次叫价都恢复,这样就没有人可以出价,这将使攻击者默认赢得拍卖。但是..他会怎么做,那是我不明白的部分。我们是否同意至少这份合同是“有效的”,而不是有效载荷?如果有效负载是合同,任何人都可以提供示例/解释吗?
我要补充一点,如果我在这里引用一个可靠的合同,我们与 Vyper 合作,但从我之前读到的内容来看,这仍然是一个我也会在那里找到的问题。
提前致谢 !
ethereum - StateAccessViolation:值必须是文字 - Vyper 以太坊智能合约
版本信息
- vyper 版本(输出
vyper --version
):0.2.8+commit.069936f - 操作系统:osx
- Python 版本(输出
python --version
):Python 2.7.16 - 环境(的输出
pip freeze
):
这个for
循环调用:
正在抛出错误:
StateAccessViolation: Value must be a literal
完整的错误输出:
我到底做错了什么?
这是对我的字面意思的误解吗?