Check data consistency.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(command_line_interface), | intent(inout) | :: | self |
CLI data. |
||
character(len=*), | intent(in), | optional | :: | pref |
Prefixing string. |
|
integer(kind=I4P), | intent(out), | optional | :: | error |
Error trapping flag. |
subroutine check(self, pref, error) !< Check data consistency. class(command_line_interface), intent(INOUT) :: self !< CLI data. character(*), optional, intent(IN) :: pref !< Prefixing string. integer(I4P), optional, intent(OUT) :: error !< Error trapping flag. integer(I4P) :: g !< Counter. integer(I4P) :: gg !< Counter. do g=0,size(self%clasg,dim=1)-1 ! check group consistency call self%clasg(g)%check(pref=pref) self%error = self%clasg(g)%error if (present(error)) error = self%error if (self%error/=0) exit ! check mutually exclusive interaction if (g>0) then if (self%clasg(g)%m_exclude/='') then if (self%is_defined_group(group=self%clasg(g)%m_exclude, g=gg)) self%clasg(gg)%m_exclude = self%clasg(g)%group endif endif enddo endsubroutine check