Archeometer.Schema.Module (Archeometer v0.5.0)
Represents an Elixir module. Holds the relevant schema data that will be used in the project analysis.
This schema has the following fields:
nameis the name of the module.num_linesis the length of the module delcaration body.coverageis a number between 0 and 1 representing the module testing coverage percentage.pathis the file path where the module was declared.has_structis 1 when the module has a struct and 0 if not.has_ecto_schemais 1 when the module defines an ecto schema and 0 if not.is_testis 1 when the module is a test.appis a reference toArcheometer.Schema.App. It is the module's corresponding OTP applicationin_refsstands for "incoming references". That is, all references of the current module in other modules. Or in other words all the usages of the current module.out_refsstands for "outgoing reference". That is, all references from other modules in the current one. Or said on other words, the current module dependencies.functionsis a reference toArcheometer.Schema.Function. All the functions defined in the module.macrosis a reference toArcheometer.Schema.Macro. All the macros defined in the module.behavioursis a reference toArcheometer.Schema.Behaviour. Behaviours implemented in the module.credo_issuesis a reference toArcheometer.Schema.CredoIssue. Credo issues detected on the module.