3
0
mirror of https://github.com/triqs/dft_tools synced 2024-10-31 19:23:45 +01:00
dft_tools/triqs
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
..
arrays arrays: change operator() && for const_view 2014-03-02 17:11:48 +01:00
clef Correction: left some C++14 used in debug... 2014-02-26 17:49:44 +01:00
det_manip bug in a det_manip constructor (from vectors for x and y values) corrected 2013-12-18 11:21:39 +01:00
gfs arrays: change operator() && for const_view 2014-03-02 17:11:48 +01:00
h5 arrays: clean h5 code 2013-11-18 23:41:32 +01:00
lattice Fix g(k,om) for tests 2014-02-26 16:24:51 +01:00
mc_tools mc_tools : add access # proposed/accepted. Add debug_stream 2014-02-28 17:20:55 +01:00
parameters arrays: h5 read/write for arrays of complex types 2014-02-13 21:46:23 +01:00
python_tools changing non_view_type to regular_type 2013-08-27 13:43:57 +02:00
statistics Add statistic tools 2014-02-12 09:41:07 +01:00
utility kronecker function and overload for matsubara_freq 2014-03-02 17:11:48 +01:00
arrays.hpp arrays : rm linalg/determinant and inverse (links) 2013-08-27 13:43:57 +02:00
clef.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
CMakeLists.txt cmake. group c++11 flags 2013-12-04 22:24:14 +01:00
det_manip.hpp add header helper files 2013-11-18 23:41:32 +01:00
gfs.hpp gf. Clean Fourier 2013-10-23 18:46:55 +02:00
h5.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
mc_tools.hpp add header helper files 2013-11-18 23:41:32 +01:00
parameters.hpp First commit : triqs libs version 1.0 alpha1 2013-07-17 19:24:07 +02:00
statistics.hpp Add statistic tools 2014-02-12 09:41:07 +01:00
version.hpp.in Work on documentation 2013-09-17 14:55:55 +02:00