File indexing completed on 2025-01-18 09:48:04
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 template <typename T0>
0014 element_type * construct(const T0 & a0)
0015 {
0016 element_type * const ret = (malloc)();
0017 if (ret == 0)
0018 return ret;
0019 try { new (ret) element_type(a0); }
0020 catch (...) { (free)(ret); throw; }
0021 return ret;
0022 }
0023 template <typename T0, typename T1>
0024 element_type * construct(const T0 & a0, const T1 & a1)
0025 {
0026 element_type * const ret = (malloc)();
0027 if (ret == 0)
0028 return ret;
0029 try { new (ret) element_type(a0, a1); }
0030 catch (...) { (free)(ret); throw; }
0031 return ret;
0032 }
0033 template <typename T0, typename T1, typename T2>
0034 element_type * construct(const T0 & a0, const T1 & a1, const T2 & a2)
0035 {
0036 element_type * const ret = (malloc)();
0037 if (ret == 0)
0038 return ret;
0039 try { new (ret) element_type(a0, a1, a2); }
0040 catch (...) { (free)(ret); throw; }
0041 return ret;
0042 }
0043