char_to_lower Function

private elemental function char_to_lower(c) result(t)

Returns the corresponding lowercase letter, if c is an uppercase ASCII character, otherwise c itself.

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: c

A character.

Return Value character(len=1)


Called by

proc~~char_to_lower~~CalledByGraph proc~char_to_lower char_to_lower proc~to_lower to_lower proc~to_lower->proc~char_to_lower proc~to_sentence to_sentence proc~to_sentence->proc~char_to_lower proc~to_title to_title proc~to_title->proc~char_to_lower

Variables

Type Visibility Attributes Name Initial
integer, private, parameter :: BA = iachar('A')
integer, private, parameter :: BZ = iachar('Z')
integer, private :: k
integer, private, parameter :: wp = iachar('a')-iachar('A')

Source Code

   elemental function char_to_lower(c) result(t)
      character(len=1), intent(in) :: c
          !! A character.
      character(len=1)             :: t
      integer, parameter :: wp = iachar('a') - iachar('A'), BA = iachar('A'), BZ = iachar('Z')
      integer :: k
      !Check whether the integer equivalent is between BA=65 and BZ=90
      k = ichar(c)
      if (k >= BA .and. k <= BZ) k = k + wp
      t = char(k)

   end function char_to_lower