Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:48:04

0001 // Copyright (C) 2000 Stephen Cleary
0002 //
0003 // Distributed under the Boost Software License, Version 1.0. (See
0004 // accompanying file LICENSE_1_0.txt or copy at
0005 // http://www.boost.org/LICENSE_1_0.txt)
0006 //
0007 // See http://www.boost.org for updates, documentation, and revision history.
0008 
0009 // This file was AUTOMATICALLY GENERATED from "stdin"
0010 //  Do NOT include directly!
0011 //  Do NOT edit!
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