What does alias do?
ag0aep6g via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Sat Apr 23 13:01:00 PDT 2016
On 23.04.2016 21:49, xtreak wrote:
> I am a D newbie from Python and I am trying to grok alias. Is alias like
> Python does as below
>
> L = []
> myextend = L.extend
> L.myextend
My Python isn't too great, but I think this is more similar to function
pointers or delegates in D.
> Renaming imported function
>
> from itertools import permutations as p
> p([1, 2], 2)
Yes, that's similar. A renamed import creates an alias. For example,
`import std.algorithm: p = permutations;` creates an alias `p` for
std.algorithm.permutations.
> Is D aliasing the same as above? How does aliasing types help like below
>
> alias intList = LinkedList!int
>
> Is the above like a partially applied template as in LinkedList!int([1,
> 2, 3]) and hence can I use it like intList([1, 2, 3])?
No, the template isn't partially applied, it's fully instantiated (and
results in a type). The alias declaration just makes `intList` an
alternative name for `LinkedList!int`.
More information about the Digitalmars-d-learn
mailing list