Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vinibrsl/mix_bina
☎️ Find callers of functions in your Elixir project in compile-time
https://github.com/vinibrsl/mix_bina
elixir elixir-lang
Last synced: 2 months ago
JSON representation
☎️ Find callers of functions in your Elixir project in compile-time
- Host: GitHub
- URL: https://github.com/vinibrsl/mix_bina
- Owner: vinibrsl
- License: mit
- Created: 2022-01-23T22:10:33.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-01-16T16:27:00.000Z (12 months ago)
- Last Synced: 2024-10-19T14:55:23.217Z (3 months ago)
- Topics: elixir, elixir-lang
- Language: Elixir
- Homepage: https://hex.pm/packages/mix_bina
- Size: 6.84 KB
- Stars: 6
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# mix_bina
Bina helps you finding all callers of a function in your Elixir project. This is
useful while debugging or refactoring. For example:```
$ mix bina MyModule.my_fun/1MyModule.my_fun/1 is called at file_1.ex
MyModule.my_fun/1 is called at file_2.ex
MyModule.my_fun/1 is called at file_3.ex
```Bina uses compilation tracers, which allows modules to observe constructs handled
by the Elixir compiler when compiling files.## Installation and Usage
The easiest way to add Bina to your project is by using Mix. Add `:mix_bina` as
a dev dependency to your project's `mix.exs`:```elixir
defp deps do
[
{:mix_bina, "~> 0.1", only: [:dev], runtime: false}
]
end
```And run:
```
$ mix bina MyModule.my_fun/1
```## Why is it called Bina?
In Portuguese, "bina" is the caller ID phone feature. Bina is actually the
abbreviation for "**B** **i**dentifies **n**umber of **A**".## License
Bina is released under the MIT License. See the LICENSE file for further details.