[发明专利]一种代码变更方法以及装置有效
申请号: | 201910877510.X | 申请日: | 2019-09-17 |
公开(公告)号: | CN110780897B | 公开(公告)日: | 2022-05-10 |
发明(设计)人: | 梁广泰;吴添勇;程啸;王泽宇;魏昭 | 申请(专利权)人: | 华为云计算技术有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F8/72 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 陈斌 |
地址: | 550025 贵州省贵阳市*** | 国省代码: | 贵州;52 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 代码 变更 方法 以及 装置 | ||
1.一种代码变更方法,其特征在于,该方法包括:
获取用户输入的软件代码以及变更配置信息,所述变更配置信息包括所述软件代码中待变更的代码元素、所述待变更的代码元素的变更方式以及所述待变更的代码元素对应的变更后的代码元素,所述代码元素包括下列的部分或全部:类、包、函数、方法、域、变量;
根据所述变更配置信息确定多个变更器以及所述多个变更器的调用顺序;
按照所述多个变更器的调用顺序依次调用所述多个变更器,对所述软件代码进行变更;
其中,每一个变更器用于对所述软件代码中的一种待变更的代码元素进行变更,所述多个变更器中第一个被调用的变更器的输入为所述软件代码,被所述第一个被调用的变更器变更后的软件代码被输入所述多个变更器中的另一个变更器。
2.如权利要求1所述的方法,其特征在于,所述根据所述软件代码的变更配置信息确定所述多个变更器的调用顺序,还包括:
若所述多个变更器中存在冲突的变更器,确定待变更的软件代码的变更模式为串行变更模式或部分串行部分并行变更模式。
3.如权利要求1或2所述的方法,其特征在于,所述多个变更器中的至少一个变更器包括直接变更内容和延迟变更内容;则,所述按照所述多个变更器的调用顺序依次调用所述多个变更器,对所述软件代码进行变更,包括:
调用所述至少一个变更器时,将所述直接变更内容应用在输入到所述至少一个变更器的软件代码中;
将所述延迟变更内容在所述多个变更器中最后一个变更器调用结束后应用。
4.如权利要求3所述的方法,其特征在于,在所述依次调用所述多个变更器之前,所述方法还包括:
基于所述多个变更器的调用顺序确定每个变更器的属性,每个变更器的属性用于描述每个变更器对所述软件代码中的目标行的变更的处理。
5.如权利要求3所述的方法,其特征在于,所述变更配置信息还包括每个变更器的属性,每个变更器的属性用于描述每个变更器对所述软件代码中的目标行的变更的处理。
6.如权利要求4或5所述的方法,其特征在于,所述方法还包括:
根据所述至少一个变更器的属性,确定所述至少一个变更器的直接变更内容。
7.如权利要求6所述的方法,其特征在于,所述根据所述至少一个变更器的属性,确定所述至少一个变更器的直接变更内容,包括:
根据所述至少一个变更器的第一属性确定所述至少一个变更器的直接变更内容,所述至少一个变更器的第一属性用于描述对所述软件代码的第一目标行的变更保留或删除,所述第一目标行为所述至少一个变更器和所述至少一个变更器之前被调用的变更器对所述软件代码变更的相同的一行或多行。
8.如权利要求7所述的方法,其特征在于,根据所述至少一个变更器的属性,确定所述至少一个变更器的直接变更内容包括:
根据所述至少一个变更器的第二属性确定所述至少一个变更器的直接变更内容,所述至少一个变更器的第二属性用于描述对所述软件代码的第二目标行的变更保留或删除,所述第二目标行为所述至少一个变更器对所述软件代码执行了变更且和所述至少一个变更器之前调用的变更器对所述软件代码变更的不同的一行或多行。
9.如权利要求1、2、4、5、或7所述的方法,其特征在于,所述方法还包括:
保存所述第一个被调用的变更器对所述软件代码的分析结果,所述分析结果中包括所述软件代码中各代码元素的位置;
所述多个变更器中的另一个变更器读取存储的所述分析结果,对所述软件代码进行变更。
10.如权利要求1、2、4、5、或7所述的方法,其特征在于,所述方法还包括:
输出所述多个变更器对所述软件代码进行变更后生成的变更后的软件代码,并显示所述多个变更器对所述软件代码进行变更的变更位置以及变更的内容。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为云计算技术有限公司,未经华为云计算技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910877510.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:空中ECU更新
- 下一篇:页面数据的升级方法、装置和电子设备