From 2a818c9e1be0a996d618b836aa512543565a9e9b Mon Sep 17 00:00:00 2001 From: Florian Prill <m300196@mlogin105.hpc.dkrz.de> Date: Fri, 9 Sep 2016 14:53:23 +0200 Subject: [PATCH] I do not see the point in removing existing comments... --- src/libmtime_hl.f90 | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/src/libmtime_hl.f90 b/src/libmtime_hl.f90 index 0afab7d3..5fdaa8c1 100644 --- a/src/libmtime_hl.f90 +++ b/src/libmtime_hl.f90 @@ -18,6 +18,10 @@ module mtime_hl public :: t_datetime, t_timedelta + !> Wrapper class for "mtime" data type "datetime". + ! + ! Avoids, e.g., explicit use of POINTERs by the user. + ! type t_datetime private @@ -56,6 +60,11 @@ module mtime_hl end type t_datetime + + !> Wrapper class for "mtime" data type "timedelta". + ! + ! Avoids, e.g., explicit use of POINTERs by the user. + ! type t_timedelta private @@ -82,6 +91,8 @@ contains ! routines, where a POINTER variable is used and its contents are ! copied to this%dt. ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + ! + ! subroutine t_datetime_deallocate(this) type(t_datetime), target, intent(inout) :: this type(datetime), pointer :: tmp_dt @@ -89,6 +100,8 @@ contains if (associated(tmp_dt)) call deallocateDatetime(tmp_dt) end subroutine t_datetime_deallocate + ! Convert t_datetime object to string. + ! function t_datetime_toString(this) character(len=max_datetime_str_len) :: t_datetime_toString class (t_datetime) :: this @@ -98,6 +111,8 @@ contains call deallocateDatetime(dt_tmp) end function t_datetime_toString + ! Assignment operator: this = "date string". + ! subroutine t_datetime_assignString(this, dt_string) class (t_datetime), intent(out) :: this character(len=*), intent(in) :: dt_string @@ -107,6 +122,8 @@ contains call deallocateDatetime(dt_tmp) end subroutine t_datetime_assignString + ! Addition of time interval to datetime object. + ! function t_datetime_addTimedelta(this, td) result(dt_td_sum) type (t_datetime) :: dt_td_sum class (t_datetime), intent(in) :: this @@ -121,6 +138,8 @@ contains call deallocateTimedelta(td_tmp) end function t_datetime_addTimedelta + ! Subtraction of two dates. + ! function t_datetime_subDatetime(this, dt) result(dt_dt_diff) type (t_timedelta) :: dt_dt_diff class (t_datetime), intent(in) :: this @@ -128,6 +147,8 @@ contains dt_dt_diff%td = getTimeDeltaFromDateTime(this%dt, dt%dt) end function t_datetime_subDatetime + ! Overloaded operator: test for equivalence. + ! logical function t_datetime_equal(this, dt) class (t_datetime), intent(in) :: this class (t_datetime), intent(in) :: dt @@ -171,6 +192,8 @@ contains if (associated(tmp_td)) call deallocateTimedelta(tmp_td) end subroutine t_timedelta_deallocate + ! Convert t_timedelta object to string. + ! function t_timedelta_toString(this) character(len=max_timedelta_str_len) :: t_timedelta_toString class (t_timedelta) :: this @@ -180,6 +203,8 @@ contains call deallocateTimedelta(td_tmp) end function t_timedelta_toString + ! Assignment operator: this = "time interval string". + ! subroutine t_timedelta_assignString(this, td_string) class (t_timedelta), intent(out) :: this character(len=*), intent(in) :: td_string -- GitLab