Thread overview | |||||
---|---|---|---|---|---|
|
June 02, 2019 import and call | ||||
---|---|---|---|---|
| ||||
Tired of having to import a single function to call it. Since mod.foo(x); doesn't work since mod is not defined. we have to do import mod : foo; foo(x); Why not mod:foo(x)? or mod#foo(x) or mod@foo(x) or whatever Reduces 50% of the lines and reduces the import symbol. I realize that we could do import m = mod; m.foo(x); but the idea is to only import the single function. I'm not sure if it matters. I thought importing single functions were suppose to be faster. Am I wrong? The idea is to reduce having to litter the code with imports which I find I'm always having to do, or to make them global... just for a few calls in to them. |
June 02, 2019 Re: import and call | ||||
---|---|---|---|---|
| ||||
Posted in reply to Amex | On Sunday, 2 June 2019 at 19:38:11 UTC, Amex wrote: > > Tired of having to import a single function to call it. > > Since > > mod.foo(x); > > doesn't work since mod is not defined. > > we have to do > > import mod : foo; > foo(x); > > Why not > > mod:foo(x)? > > or > > mod#foo(x) > > or > > mod@foo(x) > > or whatever > > Reduces 50% of the lines and reduces the import symbol. > > I realize that we could do > > import m = mod; > > m.foo(x); > > but the idea is to only import the single function. I'm not sure if it matters. I thought importing single functions were suppose to be faster. Am I wrong? > > The idea is to reduce having to litter the code with imports which I find I'm always having to do, or to make them global... just for a few calls in to them. Expression based import is possible using mixin, see https://dlang.org/blog/2017/02/13/a-new-import-idiom/ |
June 02, 2019 Re: import and call | ||||
---|---|---|---|---|
| ||||
Posted in reply to Amex | On Sunday, 2 June 2019 at 19:38:11 UTC, Amex wrote:
> I thought importing single functions were suppose to be faster. Am I wrong?
That is wrong. Importing is always done of the whole module.
All the `: func` thing does is limit the things introduced to the namespace.
|
Copyright © 1999-2021 by the D Language Foundation