3
0
mirror of https://github.com/triqs/dft_tools synced 2024-12-25 05:43:40 +01:00
dft_tools/triqs/gfs
Olivier Parcollet 5128126055 arrays: change operator() && for const_view
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() &&
2014-03-02 17:11:48 +01:00
..
domains kronecker function and overload for matsubara_freq 2014-03-02 17:11:48 +01:00
local Various small fixes in imfreq Gfs. 2014-02-19 11:59:47 +00:00
meshes gf: correct bug in matsubara_freq mesh point 2014-02-19 21:14:59 +01:00
block.hpp gf/clef. Bug fix, and added scalar->matrix reinterpret for blocks 2013-10-31 14:41:48 +01:00
bz.hpp Correction: left some C++14 used in debug... 2014-02-26 17:49:44 +01:00
CMakeLists.txt [API BREAK] rename directory gf -> gfs 2013-07-29 11:53:02 +02:00
curry.hpp Fix g(k,om) for tests 2014-02-26 16:24:51 +01:00
data_proxies.hpp implement gf_const_view 2013-10-21 15:12:53 +02:00
evaluators.hpp work on doc for gf, and details. 2013-12-30 22:32:16 +01:00
gf_expr.hpp [API change] gf : factories -> constructors 2013-10-21 15:11:44 +02:00
gf.hpp arrays: change operator() && for const_view 2014-03-02 17:11:48 +01:00
imfreq.hpp gf: correct evaluator for gf imfreq (remove mesh_pt) 2014-02-28 15:57:34 +01:00
imtime.hpp Fixed antiperiodicity property of imtime 2014-01-20 17:54:33 +01:00
legendre.hpp [API change] gf : factories -> constructors 2013-10-21 15:11:44 +02:00
product.hpp Fix g(k,om) for tests 2014-02-26 16:24:51 +01:00
refreq.hpp work on doc for gf, and details. 2013-12-30 22:32:16 +01:00
retime.hpp work on doc for gf, and details. 2013-12-30 22:32:16 +01:00
tools.hpp work on doc for gf, and details. 2013-12-30 22:32:16 +01:00