[发明专利]一种代码补全方法、装置、计算设备及存储介质有效
申请号: | 201910779909.4 | 申请日: | 2019-08-22 |
公开(公告)号: | CN110673836B | 公开(公告)日: | 2023-05-23 |
发明(设计)人: | 鲁志强 | 申请(专利权)人: | 创新先进技术有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30 |
代理公司: | 北京智信禾专利代理有限公司 11637 | 代理人: | 赵杰 |
地址: | 开曼群岛大开曼岛乔治镇医院*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 代码 方法 装置 计算 设备 存储 介质 | ||
本说明书提供一种代码补全方法、装置、计算设备及存储介质,其中所述代码补全方法包括:获取从代码库按照代码关键词计算出的n元语法序列,所述n元语法序列包括大于一元的语法序列;在用户光标所在的代码语句中,以用户光标位置为起始位置,向前取出语法序列阶数数量个的前缀词;使用语法序列阶数数量个的前缀词,从大于一元的语法序列中查找以所述前缀词为前缀的语法;如果查找到以所述前缀词为前缀的语法,将所述语法中所述前缀的后续单词作为n元语法对应的代码补全候选项。本说明书基于n元语法从概率上预测了代码补全的候选项,能够补全的代码可以包括各种含义的代码、甚至常量等等,极大程度上减少程序员输入的代码量,提高代码开发效率。
技术领域
本申请涉及计算机技术领域,特别涉及一种代码补全方法、装置、计算设备及存储介质。
背景技术
代码编辑器,是程序员用来编辑代码的工具。
为了减少程序员输入的代码量,提高代码开发效率,可以在代码编辑器中提供代码补全功能。目前,代码补全,是在代码编辑器中,程序员编辑代码时,根据程序上下文显示可用的成员函数列表,程序员从列表中选中后自动补齐。然而,程序员需要输入的代码远不止根据程序上下文可确定的成员函数,还包括其他含义的代码、常量等等。随着代码开发量越来越大,程序员输入的代码量越来越大,阻碍了代码开发效率。
发明内容
有鉴于此,本申请实施例提供了一种代码补全方法、装置、计算设备及存储介质,以解决现有技术中存在的技术缺陷。
根据本申请实施例的第一方面,提供了一种代码补全方法,包括:获取从代码库按照代码关键词计算出的n元语法序列,其中,所述n元语法序列包括大于一元的语法序列;在用户光标所在的代码语句中,以所述用户光标位置为起始位置,向前取出所述大于一元的语法序列的阶数数量个的前缀词;使用所述大于一元的语法序列的阶数数量个的前缀词,从所述大于一元的语法序列中查找以所述前缀词为前缀的语法;如果查找到以所述前缀词为前缀的语法,将所述语法中所述前缀的后续单词作为n元语法对应的代码补全候选项。
可选地,所述方法还包括:根据所述语法在所述代码库中出现的次数确定所述语法中所述前缀的后续单词在所有代码补全候选项中的排序位置。
可选地,所述n元语法序列包括一元语法序列以及大于一元的语法序列;所述方法还包括:如果使用所述大于一元的语法序列的阶数数量个的前缀词,从所有大于一元的语法序列中未查找到以所述前缀词为前缀的语法,将所述一元语法序列中的单词作为n元语法对应的代码补全候选项。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于创新先进技术有限公司,未经创新先进技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910779909.4/2.html,转载请声明来源钻瓜专利网。