|
template<SizeT B, SizeT E, class G , class F > |
constexpr decltype(auto) | iter (const G &g, const F &f) |
|
template<SizeT B, SizeT E, class G , class F , class C > |
constexpr decltype(auto) | iterIf (const G &g, const F &f, const C &c) |
|
template<typename T > |
String | toString (const T &a) |
|
template<typename T , SizeT N> |
Vector< T > | toVec (const Arr< T, N > &a) |
|
template<typename T > |
Vector< T > | toVec (const Vector< T > &a) |
|
template<typename T > |
Vector< T > | toVec (const T &a) |
|
template<typename T , SizeT N1, SizeT N2> |
constexpr Arr< T, N1+N2 > | cat2 (const Arr< T, N1 > &a1, const Arr< T, N2 > &a2) |
|
template<typename T , SizeT N1> |
constexpr Arr< T, N1+1 > | cat2 (const Arr< T, N1 > &a1, const T &a2) |
|
template<typename T , SizeT N1> |
constexpr Arr< T, N1+1 > | cat2 (const T &a1, const Arr< T, N1 > &a2) |
|
template<typename T > |
constexpr Arr< T, 2 > | cat2 (const T &a1, const T &a2) |
|
template<typename T , SizeT N2> |
Vector< T > | cat2 (const Vector< T > &a1, const Arr< T, N2 > &a2) |
|
template<typename T , SizeT N1> |
Vector< T > | cat2 (const Arr< T, N1 > &a1, const Vector< T > &a2) |
|
template<typename T > |
Vector< T > | cat2 (const Vector< T > &a1, const Vector< T > &a2) |
|
template<typename T > |
Vector< T > | cat2 (const Vector< T > &a1, const T &a2) |
|
template<typename T , SizeT N1> |
Vector< T > | cat2 (const T &a1, const Vector< T > &a2) |
|
template<typename T1 , typename T2 , typename... Ts> |
decltype(auto) | concat (const T1 &a1, const T2 &a2, const Ts &... as) |
|
template<typename T , SizeT N> |
constexpr Arr< T, N > | mul (const Arr< T, N > &a, const T &b) |
|
template<typename T > |
Vector< T > | mul (const Vector< T > &a, const T &b) |
|
template<typename T > |
constexpr T | mul (const T &a, const T &b) |
|
Uuid | mkUuid () |
|
bool | operator== (const Uuid &a, const Uuid &b) |
|
bool | operator!= (const Uuid &a, const Uuid &b) |
|
bool | operator< (const Uuid &a, const Uuid &b) |
|
bool | operator> (const Uuid &a, const Uuid &b) |
|
bool | operator<= (const Uuid &a, const Uuid &b) |
|
bool | operator>= (const Uuid &a, const Uuid &b) |
|
template<class T , class U > |
bool | operator== (const Allocator< T > &a, const Allocator< U > &b) |
|
template<class T , class U > |
bool | operator!= (const Allocator< T > &a, const Allocator< U > &b) |
|
template<class Op > |
constexpr decltype(auto) | minus (const COpInterface< Op > &op) |
|
template<class Op1 , class Op2 > |
constexpr decltype(auto) | plus (const COpInterface< Op1 > &op1, const COpInterface< Op2 > &op2) |
|
template<class Op1 , class Op2 > |
constexpr decltype(auto) | minus (const COpInterface< Op1 > &op1, const COpInterface< Op2 > &op2) |
|
template<class Op1 , class Op2 > |
constexpr decltype(auto) | multiplies (const COpInterface< Op1 > &op1, const COpInterface< Op2 > &op2) |
|
template<class Op1 , class Op2 > |
constexpr decltype(auto) | divides (const COpInterface< Op1 > &op1, const COpInterface< Op2 > &op2) |
|
template<class Op1 , class Op2 > |
constexpr decltype(auto) | modulo (const COpInterface< Op1 > &op1, const COpInterface< Op2 > &op2) |
|
template<class Op > |
constexpr decltype(auto) | operator- (const COpInterface< Op > &op) |
|
template<class Op1 , class Op2 > |
constexpr decltype(auto) | operator+ (const COpInterface< Op1 > &op1, const COpInterface< Op2 > &op2) |
|
template<class Op1 , class Op2 > |
constexpr decltype(auto) | operator- (const COpInterface< Op1 > &op1, const COpInterface< Op2 > &op2) |
|
template<class Op1 , class Op2 > |
constexpr decltype(auto) | operator* (const COpInterface< Op1 > &op1, const COpInterface< Op2 > &op2) |
|
template<class Op1 , class Op2 > |
constexpr decltype(auto) | operator/ (const COpInterface< Op1 > &op1, const COpInterface< Op2 > &op2) |
|
template<class Op1 , class Op2 > |
constexpr decltype(auto) | operator% (const COpInterface< Op1 > &op1, const COpInterface< Op2 > &op2) |
|
template<typename T , class EPosT , SizeT... Is> |
decltype(auto) | vregi (const T *d, const EPosT &pos, std::index_sequence< Is... > is) |
|
template<typename T , class EPosT > |
decltype(auto) | vreg (const T *d, const EPosT &pos) |
|
template<typename T , class EPosT > |
decltype(auto) | vreg (T *d, const EPosT &pos) |
|
template<SizeT I, typename T > |
constexpr decltype(auto) | consecGet (const T &a) |
|
template<SizeT I, typename T > |
constexpr decltype(auto) | consecGet (T &a) |
|
template<SizeT I, class F , typename... Args> |
constexpr decltype(auto) | consecApply (const F &f, const Args &... args) |
|
template<SizeT I, class F , typename Dst , typename... Args> |
constexpr Dst & | consecAssign (const F &f, Dst &dst, const Args &... args) |
|
template<class F , typename... Args, SizeT... Is> |
constexpr decltype(auto) | consecFuncI (const F &f, const Args &... args, std::index_sequence< Is... > is) |
|
template<class F , typename Dst , typename... Args, SizeT... Is> |
constexpr Dst & | consecFuncAI (const F &f, Dst &dst, const Args &... args, std::index_sequence< Is... > is) |
|
template<SizeT N, class F , typename... Args> |
constexpr decltype(auto) | consecFunc (const F &f, const Args &... args) |
|
template<SizeT N, class F , typename Dst , typename... Args> |
constexpr Dst & | consecFuncA (const F &f, Dst &dst, const Args &... args) |
|
template<typename T , typename U , SizeT N> |
constexpr decltype(auto) | operator+ (const Consecutive< T, N > &a, const Consecutive< U, N > &b) |
|
template<typename T , typename U , SizeT N> |
constexpr decltype(auto) | operator+ (const Consecutive< T, N > &a, const U &b) |
|
template<typename T , typename U , SizeT N> |
constexpr decltype(auto) | operator+ (const T &a, const Consecutive< U, N > &b) |
|
template<typename T , typename U , SizeT N> |
constexpr Consecutive< T, N > & | operator+= (Consecutive< T, N > &o, const Consecutive< U, N > &a) |
|
template<typename T , typename U , SizeT N> |
constexpr Consecutive< T, N > & | operator+= (Consecutive< T, N > &o, const U &a) |
|
template<typename T , typename U , SizeT N> |
constexpr decltype(auto) | operator- (const Consecutive< T, N > &a, const Consecutive< U, N > &b) |
|
template<typename T , typename U , SizeT N> |
constexpr decltype(auto) | operator- (const Consecutive< T, N > &a, const U &b) |
|
template<typename T , typename U , SizeT N> |
constexpr decltype(auto) | operator- (const T &a, const Consecutive< U, N > &b) |
|
template<typename T , typename U , SizeT N> |
constexpr Consecutive< T, N > & | operator-= (Consecutive< T, N > &o, const Consecutive< U, N > &a) |
|
template<typename T , typename U , SizeT N> |
constexpr Consecutive< T, N > & | operator-= (Consecutive< T, N > &o, const U &a) |
|
template<typename T , typename U , SizeT N> |
constexpr decltype(auto) | operator* (const Consecutive< T, N > &a, const Consecutive< U, N > &b) |
|
template<typename T , typename U , SizeT N> |
constexpr decltype(auto) | operator* (const Consecutive< T, N > &a, const U &b) |
|
template<typename T , typename U , SizeT N> |
constexpr decltype(auto) | operator* (const T &a, const Consecutive< U, N > &b) |
|
template<typename T , typename U , SizeT N> |
constexpr Consecutive< T, N > & | operator*= (Consecutive< T, N > &o, const Consecutive< U, N > &a) |
|
template<typename T , typename U , SizeT N> |
constexpr Consecutive< T, N > & | operator*= (Consecutive< T, N > &o, const U &a) |
|
template<typename T , typename U , SizeT N> |
constexpr decltype(auto) | operator/ (const Consecutive< T, N > &a, const Consecutive< U, N > &b) |
|
template<typename T , typename U , SizeT N> |
constexpr decltype(auto) | operator/ (const Consecutive< T, N > &a, const U &b) |
|
template<typename T , typename U , SizeT N> |
constexpr decltype(auto) | operator/ (const T &a, const Consecutive< U, N > &b) |
|
template<typename T , typename U , SizeT N> |
constexpr Consecutive< T, N > & | operator/= (Consecutive< T, N > &o, const Consecutive< U, N > &a) |
|
template<typename T , typename U , SizeT N> |
constexpr Consecutive< T, N > & | operator/= (Consecutive< T, N > &o, const U &a) |
|
template<typename T , class IndexT > |
constexpr decltype(auto) | coproot (const CArrayBase< T > &a, const Sptr< IndexT > &ind) |
|
template<typename T , class IndexT > |
constexpr decltype(auto) | coproot (const T *a, const Sptr< IndexT > &ind) |
|
template<class IndexT , class Op > |
constexpr decltype(auto) | poproot (const Sptr< IndexT > &ind, const SizeT *parts, Op &&op) |
|
template<typename T , class IndexT > |
constexpr decltype(auto) | oproot (ArrayBase< T > &a, const Sptr< IndexT > &ind) |
|
template<class F , class... Ops> |
constexpr decltype(auto) | operation (F &&f, const Ops &... ops) |
|
template<class Tar , class Src > |
constexpr decltype(auto) | assignxpr (const Tar &tar, const Src &src) |
|
template<class Tar , class Src > |
constexpr decltype(auto) | assignxpr (Tar &tar, const Src &src) |
|
template<class F , class Op , class IndexT > |
constexpr decltype(auto) | contraction (F &&f, Op &&op, const Sptr< IndexT > &i) |
|
template<class IndexT > |
constexpr decltype(auto) | indexOp (const Sptr< IndexT > &i) |
|
template<SizeT I, class PosT > |
constexpr decltype(auto) | pos_get (const PosT &pos) |
|
template<SizeT J, SizeT I, SizeT... Is> |
constexpr SizeT | sum_index_sequence (std::index_sequence< I, Is... > is) |
|
template<class F , class PosT , class OpTuple , class OpSizes , SizeT... Is> |
auto | pos_unpack_args_i (const F &f, const PosT &pos, const OpTuple &args, OpSizes opsizes, std::index_sequence< Is... > is) |
|
template<class F , class PosT , class... Ops> |
auto | pos_unpack_args (const F &f, const PosT &pos, const Tuple< Ops... > &args) |
|
template<SizeT J, SizeT... Is> |
constexpr SizeT | sum_index_sequence (std::index_sequence< Is... > is) |
|
template<class I > |
decltype(auto) | operator* (const Sptr< CIndex > &a, const Sptr< I > &b) |
|
template<class I > |
decltype(auto) | operator* (const Sptr< DIndex > &a, const Sptr< I > &b) |
|
template<class I > |
I | indexAs (const DIndex &i) |
|
template<typename MetaT , SizeT S, SizeT L, class I1 > |
decltype(auto) | operator* (const Sptr< EIndex< MetaT, S, L > > &a, const Sptr< I1 > &b) |
|
template<typename MetaT , SizeT S, SizeT L> |
decltype(auto) | eindexPtr (const Sptr< LIndex< SIndex< MetaT, S >, L > > &i) |
|
template<SizeT L, typename MetaT , SizeT S> |
decltype(auto) | eindexPtr (const Sptr< SIndex< MetaT, S > > &i) |
|
template<typename MetaT , SizeT S, SizeT L> |
decltype(auto) | eindexPtr (const Sptr< SIndex< MetaT, S > > &i, CSizeT< L > l) |
|
template<SizeT S, SizeT L1, SizeT L2, class Index > |
decltype(auto) | eplex (const Sptr< Index > &i) |
|
template<class Index , SizeT S, SizeT L> |
decltype(auto) | eplex (const Sptr< Index > &i, CSizeT< S > s, CSizeT< L > l) |
|
template<class Index , SizeT S, SizeT L1, SizeT L2> |
decltype(auto) | eplex (const Sptr< Index > &i, CSizeT< S > s, CSizeT< L1 > l1, CSizeT< L2 > l2) |
|
template<class I , typename MetaType > |
IndexPtr< I, MetaType > & | operator++ (const IndexPtr< I, MetaType > &i) |
|
template<class I , typename MetaType > |
IndexPtr< I, MetaType > & | operator-- (const IndexPtr< I, MetaType > &i) |
|
template<class I , typename MetaType > |
IndexPtr< I, MetaType > | operator+ (const IndexPtr< I, MetaType > &i, Int n) |
|
template<class I , typename MetaType > |
IndexPtr< I, MetaType > | operator- (const IndexPtr< I, MetaType > &i, Int n) |
|
template<class I > |
Sptr< I > | moveToPtr (I &&i) |
|
template<class I > |
decltype(auto) | xpr (const Sptr< I > &i) |
|
template<class... PosT> |
constexpr decltype(auto) | gmformat (const PosT &... ps) |
|
bool | formatIsTrivial (const Vector< SizeT > &f, const Vector< SizeT > &s) |
|
template<class I1 , typename Meta1 , class I2 , typename Meta2 > |
decltype(auto) | operator* (const IndexInterface< I1, Meta1 > &a, const IndexInterface< I2, Meta2 > &b) |
|
template<class I1 , typename Meta1 , class... Indices> |
decltype(auto) | operator* (const IndexInterface< I1, Meta1 > &a, const SPack< Indices... > &b) |
|
template<class I2 , typename Meta2 , class... Indices> |
decltype(auto) | operator* (const SPack< Indices... > &a, const IndexInterface< I2, Meta2 > &b) |
|
template<class Index , class... Indices> |
decltype(auto) | operator* (const Sptr< Index > &a, const SPack< Indices... > &b) |
|
template<class Index , class... Indices> |
decltype(auto) | operator* (const SPack< Indices... > &a, const Sptr< Index > &b) |
|
template<class... Indices1, class... Indices2> |
decltype(auto) | operator* (const SPack< Indices1... > &a, const SPack< Indices2... > &b) |
|
template<class I1 , typename Meta1 > |
decltype(auto) | operator* (const IndexInterface< I1, Meta1 > &a, const DPack &b) |
|
template<class I2 , typename Meta2 > |
decltype(auto) | operator* (const DPack &a, const IndexInterface< I2, Meta2 > &b) |
|
decltype(auto) | operator* (const DPack &a, const DPack &b) |
|
template<class I1 , class I2 > |
decltype(auto) | iptrMul (const Sptr< I1 > &a, const Sptr< I2 > &b) |
|
template<class... Indices> |
constexpr decltype(auto) | spack (const Indices &... inds) |
|
template<class... Indices> |
constexpr decltype(auto) | spackp (const Sptr< Indices > &... inds) |
|
template<class... Indices> |
DPack | dpack (const Indices &... inds) |
|
template<class... Indices> |
DPack | dpackp (const Sptr< Indices > &... inds) |
|
template<class Index , SizeT L, class I1 > |
decltype(auto) | operator* (const Sptr< LIndex< Index, L > > &a, const Sptr< I1 > &b) |
|
template<SizeT L, class Index > |
decltype(auto) | lindexPtr (const Sptr< Index > &i) |
|
template<class Index , SizeT L> |
decltype(auto) | lindexPtr (const Sptr< Index > &i, CSizeT< L > l) |
|
template<class... Indices> |
constexpr decltype(auto) | mindex (const Sptr< Indices > &... is) |
|
template<class... Indices> |
constexpr decltype(auto) | mindex (const SPack< Indices... > &pack) |
|
template<class... Indices> |
constexpr decltype(auto) | mindexPtr (const SPack< Indices... > &pack) |
|
template<class FormatT , class... Indices> |
constexpr decltype(auto) | gmindexPtr (const FormatT &bs, const SPack< Indices... > &pack) |
|
template<class I1 , class FormatT , class... Indices> |
decltype(auto) | operator* (const Sptr< GMIndex< FormatT, Indices... > > &a, const Sptr< I1 > &b) |
|
template<class... Ranges> |
RangePtr | mrange (const Sptr< Ranges > &... rs) |
|
template<class I , class I1 > |
decltype(auto) | operator* (const Sptr< PIndex< I > > &a, const Sptr< I1 > &b) |
|
template<class RangeT > |
RangePtr | prange (const Sptr< RangeT > &range, const Vector< SizeT > &parts) |
|
template<class Range > |
Sptr< Range > | rangeCast (const RangePtr r) |
|
RangePack | operator* (const RangePtr &a, const RangePtr &b) |
|
RangePack | operator* (const RangePtr &a, const RangePack &b) |
|
RangePack | operator* (const RangePack &a, const RangePtr &b) |
|
RangePack | operator* (const RangePack &a, const RangePack &b) |
|
RangePtr | getSub (const RangePtr &r, SizeT num) |
|
MArray< RangePtr > | getSub (const RangePtr &r) |
|
template<typename MetaType , SizeT S, class I1 > |
decltype(auto) | operator* (const Sptr< SIndex< MetaType, S > > &a, const Sptr< I1 > &b) |
|
template<typename MetaT , SizeT S, class I1 > |
decltype(auto) | operator* (const Sptr< SIndex< MetaT, S > > &a, const Sptr< I1 > &b) |
|
template<typename MetaT , class I1 > |
decltype(auto) | operator* (const Sptr< UIndex< MetaT > > &a, const Sptr< I1 > &b) |
|
template<typename MetaT > |
RangePtr | urange (const Vector< MetaT > &space) |
|
template<typename MetaT > |
void | swap (UIndex< MetaT > &a, UIndex< MetaT > &b) |
|
template<class Index > |
XIndexPtr | xindexPtr (const Sptr< Index > &i) |
|
template<> |
XIndexPtr | xindexPtr< XIndexBase > (const Sptr< XIndexBase > &i) |
|
template<> |
XIndexPtr | xindexPtr< XIndexBase > (const Sptr< XIndexBase > &i) |
|
YIndex | yindex (const DPack &pack) |
|
YIndex | yindex (const Vector< XIndexPtr > &is) |
|
Sptr< YIndex > | yindexPtr (const DPack &is) |
|
Sptr< YIndex > | yindexPtr (const Vector< XIndexPtr > &is) |
|
Sptr< YIndex > | yindexPtr (const Vector< SizeT > &bs, const Vector< XIndexPtr > &is) |
|
RangePtr | yrange (const Vector< RangePtr > &rs) |
|
template<typename T , class IXprF > |
constexpr decltype(auto) | bufxpr (IXprF &&ixprf) |
|
template<SizeT L, class Xpr , class F > |
constexpr decltype(auto) | mkFor (SizeT size, const IndexId< L > &id, const Xpr &xpr, F &&f) |
|
template<SizeT L, class Xpr > |
constexpr decltype(auto) | mkFor (SizeT size, const IndexId< L > &id, const Xpr &xpr) |
|
template<SizeT N, SizeT L, class Xpr , class F > |
constexpr decltype(auto) | mkSFor (const IndexId< L > &id, const Xpr &xpr, F &&f) |
|
template<SizeT N, SizeT L, class Xpr > |
constexpr decltype(auto) | mkSFor (const IndexId< L > &id, const Xpr &xpr) |
|
template<SizeT L1, SizeT L2, class Xpr , class F > |
constexpr decltype(auto) | mkPFor (SizeT size, const IndexId< L1 > &id1, const IndexId< L2 > &id2, const Xpr &xpr, F &&f) |
|
template<SizeT L1, SizeT L2, class Xpr , class F > |
constexpr decltype(auto) | mkPFor (SizeT size, const IndexId< L1 > &id1, const IndexId< L2 > &id2, const Xpr &xpr) |
|
template<SizeT N, class BPosT , class OPosT > |
decltype(auto) | mkEPos (const BPosT &a, const OPosT &b) |
|
template<class BPosT , class OPosT , SizeT... Is> |
decltype(auto) | mkiEPos (const BPosT &a, const OPosT &b, std::index_sequence< Is... > is) |
|
constexpr std::tm | mkTRef () |
|
template<class Archive > |
void | save (Archive &ar, const Uuid &id) |
|
template<class Archive > |
void | load (Archive &ar, Uuid &id) |
|