Library - aki2o/plsense GitHub Wiki

About handling external module of plsense

Kind of module

plsense search referable module for providing completion/help, and gather data of the module variable/function for the type inference. These module data are distinguished by the following naming.

  • InstalledModule
  • ProjectModule

InstalledModule

It can be referenced at any location.

  • It’s always used for completion/help.
  • It’s a same data at any location.

ProjectModule

It can be referenced at same project location.

  • It’s used for completion/help at same project file.
  • It’s a different data even if the module name is same between multiple project.
  • If ProjectModule exists which is same name as InstalledModule, use a data of ProjectModule.

Search of module

InstalledModule

It’s found by the value of @INC when do serverstart.

ProjectModule

It’s found by lib-path of Project Config File. At present, lib statement (use lib ...;) is not interpreted.

Update of module

The module data is saved and reused if analyzing is finished. But, redo analyzing if match the following condition.

  • The modified date is changed.
  • The file path is changed.
⚠️ **GitHub.com Fallback** ⚠️