mirror of
https://github.com/triqs/dft_tools
synced 2024-12-25 05:43:40 +01:00
5128126055
Changed operator()(int, int...) && for array, and views. - For const_view and regular type, returns value_type (i.e. a copy). NB : does make a copy, not a move. Ok for scalar type. TODO: think for complicated types. This allows codes like : f(x)(0,0) where f : x-> matrix or const_view to be correct in clef expression evaluation. - For _view : return a value_type &, as before to allow : A(....)(0,0) = rhs; It is not possible to detect dangling refs in that case at compile time. Added a security in TRIQS_ARRAYS_DEBUG mode to detect a dangling ref at run time, i.e. the case where the view is "unique" (ref count ==1). This would be a quite bad design anyway ... - also : - clean operator[] for vector (old workaround for old gcc...) - add IsView flag in ISP impl class, for the impl. of operator() && |
||
---|---|---|
.. | ||
domains | ||
local | ||
meshes | ||
block.hpp | ||
bz.hpp | ||
CMakeLists.txt | ||
curry.hpp | ||
data_proxies.hpp | ||
evaluators.hpp | ||
gf_expr.hpp | ||
gf.hpp | ||
imfreq.hpp | ||
imtime.hpp | ||
legendre.hpp | ||
product.hpp | ||
refreq.hpp | ||
retime.hpp | ||
tools.hpp |