Archeometer.Collect.Project (Archeometer v0.5.0)

Utilities for obtaining higher level information about a project, mostly through Mix and Application.

Link to this section Summary

Functions

Obtain the list of local app in the current project. This is the value of :app in regular projects and all the children apps in umbrella projects.

Returns the project dependencies that matches the filters.

Get the (underscored) module name of the current projectmix.exs file. Every directory with one is considered a project by Mix.

Given a file path, try to guess its application. If the project is not umbrella, just return the project app. Else try to parse the path to guess the application.

Get all the locally defined modules.

Obtain all the locally defined modules by application.

Obtain all the apps defined as umbrella children.

Link to this section Functions

Obtain the list of local app in the current project. This is the value of :app in regular projects and all the children apps in umbrella projects.

Link to this function

filter_deps(filters)

Returns the project dependencies that matches the filters.

parameters

Parameters

  • filters: List of wildcard style strings to use as filters.

Get the (underscored) module name of the current projectmix.exs file. Every directory with one is considered a project by Mix.

Link to this function

get_app_deps(app)

Link to this function

get_curr_app_deps(module)

Link to this function

get_dep_path(dep)

Link to this function

guess_app_from_path(file_path)

Given a file path, try to guess its application. If the project is not umbrella, just return the project app. Else try to parse the path to guess the application.

Link to this function

in_app(app, fun)

Link to this function

list_behaviours(modules)

Link to this function

list_modules_with_struct(modules)

Link to this function

local_modules(extra_deps \\ [])

Get all the locally defined modules.

Link to this function

local_modules_by_app(extra_deps \\ [])

Obtain all the locally defined modules by application.

Link to this function

tag_external_apps(apps)

Link to this function

test_paths(deps_filter)

Link to this function

umbrella_apps()

Obtain all the apps defined as umbrella children.