Specifying callbacks for behaviours extending gen_server
Brett Hemes <[email protected]>
| Newsgroups | gmane.comp.lang.erlang.general |
|---|---|
| Message-ID | <CH2PR03MB5336D07A0E8B732855D35D46BE809@CH2PR03MB5336.namprd03.prod.outlook.com> |
I am designing a behaviour that extends gen_server and thus I want all of gen_server's callback specification in addition to some additional ones on top as part of the extension. In the past I have favored using the `-callback` attribute as recommended in the documentation but then I saw someone recommend the following when extending gen_server > behaviour_info(Type) -> gen_server:behaviour_info(Type). I tried combining the two approaches but such is not allowed (which makes sense). I believe my options are to append my callbacks to gen_server's list using `behaviour_info` or to copy gen_server's callback specifications from the OTP source. Copy-pasting code just feels wrong... how bad is it to use `behaviour_info` over `-callback`? And am I taking the right approach? Thanks, Brett