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:
name
is the name of the module.num_lines
is the length of the module delcaration body.coverage
is a number between 0 and 1 representing the module testing coverage percentage.path
is the file path where the module was declared.has_struct
is 1 when the module has a struct and 0 if not.has_ecto_schema
is 1 when the module defines an ecto schema and 0 if not.is_test
is 1 when the module is a test.app
is a reference toArcheometer.Schema.App
. It is the module's corresponding OTP applicationin_refs
stands 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_refs
stands for "outgoing reference". That is, all references from other modules in the current one. Or said on other words, the current module dependencies.functions
is a reference toArcheometer.Schema.Function
. All the functions defined in the module.macros
is a reference toArcheometer.Schema.Macro
. All the macros defined in the module.behaviours
is a reference toArcheometer.Schema.Behaviour
. Behaviours implemented in the module.credo_issues
is a reference toArcheometer.Schema.CredoIssue
. Credo issues detected on the module.