exception.f90

Go to the documentation of this file.
00001 
00003 
00016 module mod_exception
00017 #include "fml_constants.h"
00018   implicit none
00019 
00020 
00030   type type_exception
00031      integer :: e_number; ! e_number : error number
00032      integer :: e_level;  ! e_level  : error level
00033      character(len=len_what_exception) :: e_what; ! e_what   : error signification
00034   end type type_exception
00035 
00036 CONTAINS
00037 
00038 
00049   function e_error(number_,what_,level_) result(err_)
00050     implicit none
00051     integer,intent(in) :: number_
00052     integer,intent(in) :: level_
00053     character(len=len_what_exception),intent(in) :: what_
00054     !local variables
00055     type(type_exception) :: err_
00056     err_%e_number=number_
00057     err_%e_level=level_
00058     err_%e_what=what_
00059     call e_print_err(err_)
00060     stop 
00061   end function e_error
00062 
00069   subroutine e_print_err(err_)
00070     implicit none
00071     type(type_exception),intent(in) :: err_;
00072     print*, "error----> number=", err_%e_number, " , level=", err_%e_level, ", warning=", err_%e_what
00073   end subroutine e_print_err
00074 
00075 
00076 end module mod_exception
00077 
 All Classes Namespaces Files Functions Variables Defines