/*
    AUTOMATICALLY GENERATED BY tspec 2.8
    API SUBSET: cpp:stdexcept (VERSION 1.1)
*/

#ifndef __TDF_CPP_STDEXCEPT
#define __TDF_CPP_STDEXCEPT

extern "C++" {

namespace std {

#pragma TenDRA declaration block api__cpp__stdexcept begin

#ifndef __TDF_CPP_EXCEPTION_EXCEPT
#pragma extend interface "../shared/cpp.api/except.h"
#endif /* __TDF_CPP_EXCEPTION_EXCEPT */
// DUMMY STRING TYPE
typedef const char *_string ;

// BASE CLASS FOR LOGICAL ERROR EXCEPTIONS
class logic_error : public exception {
public :
    logic_error ( const _string & ) ;
} ;

// DOMAIN ERROR EXCEPTIONS
class domain_error : public logic_error {
public :
    domain_error ( const _string & ) ;
} ;

// INVALID ARGUMENT EXCEPTIONS
class invalid_argument : public logic_error {
public :
    invalid_argument ( const _string & ) ;
} ;

// LENGTH ERROR EXCEPTIONS
class length_error : public logic_error {
public :
    length_error ( const _string & ) ;
} ;

// OUT OF RANGE ERROR EXCEPTIONS
class out_of_range : public logic_error {
public :
    out_of_range ( const _string & ) ;
} ;

// BASE CLASS FOR RUNTIME ERROR EXCEPTIONS
class runtime_error : public exception {
public :
    runtime_error ( const _string & ) ;
} ;

// RANGE ERROR EXCEPTIONS
class range_error : public runtime_error {
public :
    range_error ( const _string & ) ;
} ;

// OVERFLOW ERROR EXCEPTIONS
class overflow_error : public runtime_error {
public :
    overflow_error ( const _string & ) ;
} ;

#pragma TenDRA declaration block end

}

}

#endif /* __TDF_CPP_STDEXCEPT */
