class 文件夹和命名空间中 class 方法的 Matlab 代码完成

Matlab code completion for class method in a class folder and namespace

我有一个位于命名空间文件夹中的 class,在该命名空间文件夹中,它位于 class 文件夹中。因此,目录结构为

inpath/+namespace/@ClassName/ClassName.m

我想为 ClassName.m 中定义的方法提供一些代码建议。

我生成了一个 functionSignature.json 文件并将其放在

inpath/+namespace/@ClassName/

没用,

inpath/+namespace/

也没有用。

此外,我尝试了以下函数名称:

"Classname.Methodname"

"namespace.ClassName.MethodName"

在这两个地方,但都没有用。

说语法 "ClassName.MethodName" 对于 class 方法是正确的,但是 class 不在命名空间中(答案没有说明是否class 是在 class 目录中定义的。

为确保没有其他错误,这是我的原始 functionSignature.json 文件(使用 "namespace.ClassName.MethodName"):

{
  "SICM.SICMScan.FromFile":
  {
     "inputs":
     [
         {"name":"in1",  "kind":"ordered", "type":"file=*.sicm,*.sic,*.ras"}
     ]
  }
} 

我的问题是:

我最初的预感是正确的:functionSignature.json 文件需要位于您添加到 MATLAB 路径的任何目录中才能使用这些函数。由于命名空间目录不是直接添加到路径中,而是它们的父目录,因此 functionSignature.json 目录需要在命名空间目录的父目录中。