[发明专利]变量编译方法、装置、电子设备及可读存储介质在审
申请号: | 202211314051.2 | 申请日: | 2022-10-25 |
公开(公告)号: | CN115794103A | 公开(公告)日: | 2023-03-14 |
发明(设计)人: | 庄虔伟;曹崇瑞 | 申请(专利权)人: | 网易(杭州)网络有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F16/27 |
代理公司: | 北京清源汇知识产权代理事务所(特殊普通合伙) 11644 | 代理人: | 冯德魁 |
地址: | 310052 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 变量 编译 方法 装置 电子设备 可读 存储 介质 | ||
1.一种变量编译方法,其特征在于,所述方法包括:
对于定义并存储在区块链智能合约的持久化存储空间的各变量,执行第一步骤,以对所述各变量进行重新排序,得到重新排序后的智能合约变量序列;
对所述智能合约变量序列进行编译;
其中,所述第一步骤包括:
从所述各变量中筛选出所占字节长度等于合约插槽字节长度的第一变量组,其中,所述第一变量组中包括至少一个第一变量;
对每个所述第一变量组中的各所述第一变量进行排序,并对各所述第一变量组进行排序,得到第一变量序列;
将此刻剩余的各所述变量进行排序,得到第二变量序列;
将所述第一变量序列和所述第二变量序列依次排序。
2.根据权利要求1所述的方法,其特征在于,所述将此刻剩余的各所述变量进行排序,得到第二变量序列,包括:
循环执行第二步骤,直至剩余变量集合为空时,退出循环;
将每次执行所述第二步骤所得的各第二变量组按照筛选顺序进行排序,得到第二变量序列;
其中,所述第二步骤包括:
从此刻剩余的各所述变量中,筛选出所占字节长度最大的候选变量;
从此刻剩余的各所述变量中,筛选出与所述候选变量共同构成第二变量组的各第二变量,并得到剩余变量集合,其中,所述合约插槽字节长度与所述第二变量组的所占字节长度的差值小于所述剩余变量集合中任一所述变量的所占字节长度;
对所述第二变量组中的所述候选变量和所述各第二变量进行排序;
判断此刻的所述剩余变量集合是否为空;
若否,继续循环;
若是,退出循环。
3.根据权利要求1所述的方法,其特征在于,所述将此刻剩余的各所述变量进行排序,得到第二变量序列,包括:
将此刻剩余的各所述变量按照所占字节长度依次递减的顺序进行排序,得到第二变量序列。
4.根据权利要求1所述的方法,其特征在于,所述对所述智能合约变量序列进行编译之后,还包括:
对于定义并存储在所述区块链智能合约的继承合约的持久化存储空间的新增的各变量,执行所述第一步骤,以对所述新增的各变量进行重新排序,得到重新排序后的新增合约变量序列;
将所述智能合约变量序列和所述新增合约变量序列依次排序,得到合约升级后的合约变量序列;
对所述合约升级后的合约变量序列进行编译。
5.根据权利要求1所述的方法,其特征在于,所述从所述各变量中筛选出所占字节长度等于合约插槽字节长度的第一变量组,包括:
令N的初始值为1,循环执行第三步骤,直至剩余的所述变量的数量小于N时,退出循环;
其中,所述第三步骤包括:
从所述各变量中筛选出所占字节长度之和等于合约插槽字节长度的N个第一变量,得到第N轮筛选后的各第一变量组;
判断此刻剩余的所述变量的数量是否小于N;
若否,将N的当前值加1,继续循环;
若是,退出循环。
6.根据权利要求5所述的方法,其特征在于,所述令N的初始值为1,循环执行第三步骤,直至剩余的所述变量的数量小于N时,退出循环,包括:
令N的初始值为1,循环执行第三步骤,直至剩余的所述变量的数量小于N,或者N+1>K时,退出循环,其中,K为预设值,且K≥2。
7.根据权利要求6所述的方法,其特征在于,所述若否,将N的当前值加1,继续循环,包括:
若否,判断(N+1)是否大于K;
若否,将N的当前值加1,继续循环;
相应地,所述若否,判断(N+1)是否大于K之后,还包括:
若是,退出循环。
8.根据权利要求6所述的方法,其特征在于,所述判断此刻剩余的所述变量的数量是否小于N,包括:
判断(N+1)是否大于K;
若否,判断此刻剩余的所述变量的数量是否小于N;
相应地,所述判断(N+1)是否大于K之后,还包括:
若是,退出循环。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于网易(杭州)网络有限公司,未经网易(杭州)网络有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211314051.2/1.html,转载请声明来源钻瓜专利网。