sarat1669
I have a module which defines a behavior
defmodule Light.Trigger do
@callback initialize(%{}) :: {:ok, any()}
defmacro __using__(_) do
quote do
use GenServer
@behaviour Light.Trigger
...
end
end
And I am using it like
defmodule Light.Test do
use Light.Trigger
@impl true
def initialize(state) do
{:ok, state}
end
@impl true
def handle_info(:test, state) do
...
{:noreply, state}
end
end
This happens
iex> Light.Test.module_info[:attributes][:behaviour]
[GenServer]
But it should be
iex> Light.Test.module_info[:attributes][:behaviour]
[GenServer, Trigger]
right?
Trending in Discussions
The obligatory hello world thread!
Who are you and where are you from? :stuck_out_tongue:
New
Hey there,
It’s been more than a year since we started using LiveView as our main UI library and building a whole library of UI componen...
New
Hey folks,
I wanted to share with you a project I’ve been working on for a while: It’s an Open Source (AGPLv3) newsletter tool. Think Ma...
New
Hi everyone :waving_hand:
I wanted to share something I’ve been building — NowBlind, a random chat app designed to help people discover ...
New
In my third year of college, around 2010, I found Erlang. A few years later, I found Elixir. I liked the ideas at once: many small proces...
New
I’ve been tinkering with Lynx (by José) via hold_ledger. I used AI to write the code, a separate specification, the tests, and the Lean p...
New
Hi everyone,
I have 8 years of production experience with Erlang/OTP and I’m just starting to get to know Elixir. What would you learn f...
New
Other Trending Topics
Hey there,
I haven’t seen a list of useful Elixir specific skills for the popular AI tools yet so I’m starting one here with my first.
...
New
I fully migrated to my own harness from Anthropic/Gemini and I think it’s time to share it. Welcome DSH, the DeepSeek Harness, fully writ...
New
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
New
(I just needed to vent somewhere and LinkedIn is full of hope, or hype, I’m not sure which exactly)
AI dream has many faces, but general...
New
Localize is the next generation localisation library for Elixir. Think of it as ex_cldr version 3.0. The first version will be released ...
New
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #code-sync
- #discussion
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #ai
- #umbrella
- #elixirconf-us
- #full-time-contract
- #podcasts-by-brainlid
- #blog-post
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #elixirconf-eu
- #processes
- #security
- #api
- #forms
- #performance










Showing Posts 1 to 6- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
sarat1669
On further inspection:
John-Goff
You can use Keyword — Elixir v1.20.2 to get the list that you want.
hauleth
1.Use more idiomatic
mod.module_info(:attributes).2. It will mention only behaviours set via module attribute (you do not need to set that to implement behaviour). So there is no “100% correct” solution to list all implemented behaviours.
sarat1669
Is there a case where, the
behaviourin module_info is a returned as a list with multiple behaviours? If not, should this be treated as a bug?eksperimental
It should not really matter whether it accepts a list or not (it does not FYI).
This is the way attributes work with accumulate
true.bit4bit
see model_info i think it’s work as expected: