to_real_R4P Function

private elemental function to_real_R4P(self, kind) result(to_number)

Type Bound

string

Arguments

Type IntentOptional Attributes Name
class(string), intent(in) :: self
real(kind=R4P), intent(in) :: kind

Return Value real(kind=R4P)


Calls

proc~~to_real_r4p~~CallsGraph proc~to_real_r4p string%to_real_R4P proc~is_real string%is_real proc~to_real_r4p->proc~is_real

Called by

proc~~to_real_r4p~~CalledByGraph proc~to_real_r4p string%to_real_R4P none~to_number string%to_number none~to_number->proc~to_real_r4p program~stringifor_test_csv_naive_parser stringifor_test_csv_naive_parser program~stringifor_test_csv_naive_parser->none~to_number program~stringifor_test_csv_naive_parser~2 stringifor_test_csv_naive_parser program~stringifor_test_csv_naive_parser~2->none~to_number program~volatile_doctest~1034 volatile_doctest program~volatile_doctest~1034->none~to_number program~volatile_doctest~1046 volatile_doctest program~volatile_doctest~1046->none~to_number program~volatile_doctest~1203 volatile_doctest program~volatile_doctest~1203->none~to_number program~volatile_doctest~162 volatile_doctest program~volatile_doctest~162->none~to_number program~volatile_doctest~25 volatile_doctest program~volatile_doctest~25->none~to_number program~volatile_doctest~251 volatile_doctest program~volatile_doctest~251->none~to_number program~volatile_doctest~303 volatile_doctest program~volatile_doctest~303->none~to_number program~volatile_doctest~322 volatile_doctest program~volatile_doctest~322->none~to_number program~volatile_doctest~326 volatile_doctest program~volatile_doctest~326->none~to_number program~volatile_doctest~330 volatile_doctest program~volatile_doctest~330->none~to_number program~volatile_doctest~366 volatile_doctest program~volatile_doctest~366->none~to_number program~volatile_doctest~454 volatile_doctest program~volatile_doctest~454->none~to_number program~volatile_doctest~472 volatile_doctest program~volatile_doctest~472->none~to_number program~volatile_doctest~490 volatile_doctest program~volatile_doctest~490->none~to_number program~volatile_doctest~491 volatile_doctest program~volatile_doctest~491->none~to_number program~volatile_doctest~520 volatile_doctest program~volatile_doctest~520->none~to_number program~volatile_doctest~526 volatile_doctest program~volatile_doctest~526->none~to_number program~volatile_doctest~532 volatile_doctest program~volatile_doctest~532->none~to_number program~volatile_doctest~536 volatile_doctest program~volatile_doctest~536->none~to_number program~volatile_doctest~637 volatile_doctest program~volatile_doctest~637->none~to_number program~volatile_doctest~659 volatile_doctest program~volatile_doctest~659->none~to_number program~volatile_doctest~718 volatile_doctest program~volatile_doctest~718->none~to_number program~volatile_doctest~722 volatile_doctest program~volatile_doctest~722->none~to_number program~volatile_doctest~791 volatile_doctest program~volatile_doctest~791->none~to_number program~volatile_doctest~829 volatile_doctest program~volatile_doctest~829->none~to_number program~volatile_doctest~844 volatile_doctest program~volatile_doctest~844->none~to_number program~volatile_doctest~879 volatile_doctest program~volatile_doctest~879->none~to_number program~volatile_doctest~894 volatile_doctest program~volatile_doctest~894->none~to_number

Source Code

   elemental function to_real_R4P(self, kind) result(to_number)
   !< Cast string to real (R4P).
   !<
   !<```fortran
   !< use penf
   !< type(string) :: astring
   !< real(R4P)    :: real_
   !< logical      :: test_passed(1)
   !< astring = '3.4e9'
   !< real_ = astring%to_number(kind=1._R4P)
   !< test_passed(1) = real_==3.4e9_R4P
   !< print '(L1)', all(test_passed)
   !<```
   !=> T <<<
   class(string), intent(in) :: self      !< The string.
   real(R4P),     intent(in) :: kind      !< Mold parameter for kind detection.
   real(R4P)                 :: to_number !< The number into the string.

   if (allocated(self%raw)) then
     if (self%is_real()) read(self%raw, *) to_number
   endif
   endfunction to_real_R4P