# General method for new structure

**URL:** <https://discourse.julialang.org/t/general-method-for-new-structure/51666>\
**Category:** New to Julia\
**Tags:** question\
**Created:** [December 11, 2020, 2:07pm UTC](https://discourse.julialang.org/t/general-method-for-new-structure/51666 "2020-12-11T14:07:27Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![hendri54](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/hendri54/32/9621_2.png) [@hendri54](https://discourse.julialang.org/u/hendri54)\
**Post date:** [December 11, 2020, 2:41pm UTC](https://discourse.julialang.org/t/general-method-for-new-structure/51666/3 "2020-12-11T14:41:14Z")

</div>

A convenient way of delegating methods is `Lazy.jl` `@forward`. But there are other approaches:

> [@Method forwarding macro](https://discourse.julialang.org/t/method-forwarding-macro/23355):
>
> MacroTools.jl defines a [@forward macro but it’s in the examples folder](https://github.com/MikeInnes/MacroTools.jl/blob/master/src/examples/forward.jl). Lazy.jl exports [its own version of the same macro](https://github.com/MikeInnes/Lazy.jl/blob/a1b5f06ade07a442f0c009fb0bb4fe594db11fd2/src/macros.jl#L264-L288) but it’s not documented in the README. Come to think of it, while the @forward macro is quite useful, it isn’t really a macro development tool nor a functional programming tool. So I’m not too surprised that it is treated like a second-class citizen in those packages. Any thought about what kind of package would be a good fit for this?

---

_[View the full topic](https://discourse.julialang.org/t/general-method-for-new-structure/51666)._
