System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 函数调用显示方法、装置、存储介质及计算机设备制造方法及图纸_技高网

函数调用显示方法、装置、存储介质及计算机设备制造方法及图纸

技术编号:40964011 阅读:4 留言:0更新日期:2024-04-18 20:43
本申请公开了一种函数调用显示方法,包括:响应于编译指令获取集成开发环境中的源代码,该源代码中被调用函数的函数声明携带引用属性;对源代码进行编译,结合引用属性生成源代码对应的抽象语法树;根据抽象语法树,获取源代码中被调用函数与调用函数之间的调用链路;根据调用链路,显示被调用函数与调用函数之间的调用关系图;基于调用链路,显示被调用函数以及对应的调用函数的函数名称。本申请可以在代码编译时输出源代码中函数间的调用关系图,并通过在源代码进行运行的过程中,对被调用函数以及对应的调用函数的函数名称进行可视化显示,便于开发人员理清函数间的调用关系,从而提高了开发者分析源代码的效率。

【技术实现步骤摘要】

本申请涉及计算机,更具体地,涉及一种函数调用显示方法、装置、存储介质及计算机设备


技术介绍

1、软件代码/程序(software program)为通过软件编程实现的一种程序过程,以提高对实物载体的管理效率,降低人力支出。代码在开发和运行的过程中,都涉及到诸多的函数方法调用,软件实体是由函数方法之间的逐层调用组成的,而多种函数方法调用的调用关系最终形成了多条调用链路。

2、为了保证软件代码的正确性,开发人员经常需要对多条调用链路进行查看和分析。有关技术中,开发人员在可以利用软件开发工具提供的日志数据来查看和分析调用链路。然而,通常调用链路的链路长度很长且调用层级很多,开发人员通过日志数据发掘排查软件代码的效率很低。


技术实现思路

1、本申请实施例提供一种函数调用显示方法、装置、存储介质以及计算机设备。旨在便于开发人员直观看到函数间调用时的函数名称,提高软件代码开发的效率。

2、一方面,本申请实施例提供一种函数调用显示方法,该方法包括:响应于编译指令获取集成开发环境中的源代码,源代码中被调用函数的函数声明携带引用属性;对源代码进行编译,结合引用属性生成源代码对应的抽象语法树;根据抽象语法树,获取源代码中被调用函数与调用函数之间的调用链路;根据调用链路,显示被调用函数与调用函数之间的调用关系图;基于调用链路,显示被调用函数以及对应的调用函数的函数名称。

3、另一方面,本申请实施例还提供一种函数调用显示装置,该装置包括:代码获取模块,用于响应于编译指令获取集成开发环境中的源代码,源代码中被调用函数的函数声明携带引用属性;代码编译模块,用于对源代码进行编译,结合引用属性生成源代码对应的抽象语法树;链路获取模块,用于根据抽象语法树,获取源代码中被调用函数与调用函数之间的调用链路;关系显示模块,用于根据调用链路,显示被调用函数与调用函数之间的调用关系图;函数输出模块,用于基于调用链路,显示被调用函数以及对应的调用函数的函数名称。

4、另一方面,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质可以存储有计算机程序,其中,在该计算机程序被处理器运行时执行上述的函数调用显示方法。

5、另一方面,本申请实施例还提供一种计算机设备,该计算机设备可以包括处理器以及存储器,存储器可以存储有计算机程序,该计算机程序被处理器调用时执行上述的函数调用显示方法。

6、另一方面,本申请实施例还提供一种计算机程序产品,该计算机程序产品可以包括计算机程序,该计算机程序存储在存储介质中。计算机设备的处理器可以从该存储介质读取该计算机程序,处理器可以执行该计算机程序,使得该计算机设备执行上述函数调用显示方法中的步骤。

7、本申请提供的一种函数调用显示方法,可以响应于编译指令获取集成开发环境中的源代码,该源代码中被调用函数的函数声明携带引用属性,进一步地,对源代码进行编译,结合引用属性生成源代码对应的抽象语法树,并根据抽象语法树,获取源代码中被调用函数与调用函数之间的调用链路,进而根据调用链路,显示被调用函数与调用函数之间的调用关系图,并基于调用链路,显示被调用函数以及对应的调用函数的函数名称。如此,可以在代码编译时输出源代码中函数间的调用关系图,并在源代码运行过程中,对被调用函数以及对应的调用函数的函数名称进行可视化的显示,便于开发人员直观地理清函数间的调用关系,从而提高开发者编辑及分析源代码的效率。

本文档来自技高网...

【技术保护点】

1.一种函数调用显示方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述根据所述调用链路,显示被调用函数与调用函数之间的调用关系图,包括:

3.根据权利要求1所述的方法,其特征在于,所述对所述源代码进行编译,结合所述引用属性生成所述源代码对应的抽象语法树,包括:

4.根据权利要求3所述的方法,其特征在于,所述根据所述抽象语法树,获取所述源代码中被调用函数与调用函数之间的调用链路,包括:

5.根据权利要求4所述的方法,其特征在于,所述引用属性包括调用层级,所述确定所述被调用函数的调用链路,包括:

6.根据权利要求1所述的方法,其特征在于,所述基于所述调用链路,显示所述被调用函数以及对应的调用函数的函数名称,包括:

7.根据权利要求6所述的方法,其特征在于,所述基于所述调用链路,确定所述被调用函数对应的调用函数的函数名称,包括:

8.根据权利要求7所述的方法,其特征在于,所述显示所述被调用函数以及对应的调用函数的函数名称,包括:

9.一种函数调用显示装置,其特征在于,所述装置包括:

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器调用执行如权利要求1~8任一项所述的方法。

11.一种计算机设备,其特征在于,包括:

12.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序存储在存储介质中;计算机设备的处理器从存储介质读取所述计算机程序,处理器执行所述计算机程序,使得所述计算机设备执行如权利要求1~8任一项所述的方法。

...

【技术特征摘要】

1.一种函数调用显示方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述根据所述调用链路,显示被调用函数与调用函数之间的调用关系图,包括:

3.根据权利要求1所述的方法,其特征在于,所述对所述源代码进行编译,结合所述引用属性生成所述源代码对应的抽象语法树,包括:

4.根据权利要求3所述的方法,其特征在于,所述根据所述抽象语法树,获取所述源代码中被调用函数与调用函数之间的调用链路,包括:

5.根据权利要求4所述的方法,其特征在于,所述引用属性包括调用层级,所述确定所述被调用函数的调用链路,包括:

6.根据权利要求1所述的方法,其特征在于,所述基于所述调用链路,显示所述被调用函数以及对应的调用函数的函数名称,包括:

7.根据权利要求6所...

【专利技术属性】
技术研发人员:李彬
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1