创建自己的提供程序模块
通常,若要创建自己的提供程序模块,必须实现以下接口集。
$module::SimpleUsage ()
目的
向 STDOUT 显示简单的模块使用情况信息。
参数
无
返回值
无
$module::VerboseUsage ()
目的
向 STDOUT 显示深入的模块使用情况信息。
参数
无
返回值
无
$objref = $module::new (@CommandArguments)
目的
初始化提供程序模块的实例。
参数
@CommandArguments
ssindex.cmd 未识别为常规参数的所有 @ARGV 参数。
返回值
可在后续操作中使用的引用。
$objref->GatherFileInformation ($SourcePath,$ServerHashReference)
目的
使模块能够收集 $SourcePath 参数指定的目录所需的源索引信息。 模块不应假定每个对象实例只调用一次此条目,因为 SSIndex 可能会针对不同的路径多次调用它。
参数
$SourcePath
包含要编制索引的源的本地目录。
$ServerHashReference
对包含指定Srcsrv.ini文件中的所有条目的哈希的引用。
返回值
无
($VariableHashReference,$FileEntry) =$objref-GetFileInfo > ($LocalFile)
目的
提供从源代码管理系统中提取单个特定文件所需的信息。
参数
$LocalFile
完全限定的文件名。
返回值
$VariableHashReference
解释返回的$FileEntry所需的变量 的哈希引用。 Ssindex.cmd 为单个调试文件使用的每个源文件缓存这些变量,以减少写入源索引流的信息量。
$FileEntry
要写入源索引流以允许 SrcSrv 从源代码管理中提取此文件的文件条目。 此行的确切格式特定于源代码管理系统。
$TextString= $objref-LongName> ()
目的
提供一个描述性字符串,用于向最终用户标识源代码管理系统。
参数
无
返回值
$TextString
源代码管理系统的描述性名称。
@StreamVariableLines=$objref-SourceStreamVariables> ()
目的
使源代码管理系统能够将特定于源代码管理的变量添加到每个调试文件的源流中。 示例模块使用此方法编写所需的EXTRACT_CMD和EXTRACT_TARGET变量。
参数
无
返回值
@StreamVariableLines
源流变量的条目列表。