[SAoC] Move semantics and STL containers
Suleyman
sahmi.soulaimane at gmail.com
Sat Oct 5 20:22:00 UTC 2019
Week 3 status:
- `@rvalue` / `__rvalue` type constructor[1]:
- implemented runtime type info[1][2]
- `auto ref` infers `@rvalue`
- `auto @rvalue ref` parameters expand to either `ref` or
`@rvalue ref`
- `auto ref` parameters retain their current behavior
- `auto ref` returns infer all three options `ref`,
`@rvalue ref`, and value.
- implemented semantic for default arguments
- implicit conversion is unidirectional, only from `@rvalue`
to non `@rvalue` is allowed.
- rvalue expressions are implicitly convertible to `@rvalue`
- finding the common type of a binary expression is now aware
of `@rvalue`
- if both operands are `@rvalue` the result if `@rvalue`
- else it's not `@rvalue`
____
[1] https://github.com/dlang/dmd/pull/10426
[2] https://github.com/dlang/druntime/pull/2814
More information about the Digitalmars-d
mailing list