Skip to content

Commit e70f6d8

Browse files
committed
changed interface to keep pad_with as optional
1 parent 61f08d9 commit e70f6d8

File tree

1 file changed

+48
-28
lines changed

1 file changed

+48
-28
lines changed

src/stdlib_strings.f90

Lines changed: 48 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -97,20 +97,20 @@ module stdlib_strings
9797
!> [Specifications](link to the specs - to be completed)
9898
!> Version: experimental
9999
interface padl
100-
module procedure :: padl_string_string
101-
module procedure :: padl_string_char
102-
module procedure :: padl_char_string
103-
module procedure :: padl_char_char
100+
module procedure :: padl_string_default
101+
module procedure :: padl_string_pad_with
102+
module procedure :: padl_char_default
103+
module procedure :: padl_char_pad_with
104104
end interface padl
105105

106106
!> Right pad the input string
107107
!> [Specifications](link to the specs - to be completed)
108108
!> Version: experimental
109109
interface padr
110-
module procedure :: padr_string_string
111-
module procedure :: padr_string_char
112-
module procedure :: padr_char_string
113-
module procedure :: padr_char_char
110+
module procedure :: padr_string_default
111+
module procedure :: padr_string_pad_with
112+
module procedure :: padr_char_default
113+
module procedure :: padr_char_pad_with
114114
end interface padr
115115

116116
contains
@@ -672,38 +672,48 @@ end function replace_all_char_char_char
672672
!> Left pad the input string with the 'pad_with' string
673673
!>
674674
!> Returns a new string
675-
pure function padl_string_string(string, output_length, pad_with) result(res)
675+
pure function padl_string_default(string, output_length) result(res)
676676
type(string_type), intent(in) :: string
677677
integer, intent(in) :: output_length
678-
type(string_type), intent(in) :: pad_with
679678
type(string_type) :: res
680679

681-
res = string_type(padl_char_char(char(string), output_length, char(pad_with)))
682-
end function padl_string_string
680+
res = string_type(padl_char_char(char(string), output_length, " "))
681+
end function padl_string_default
683682

684683
!> Left pad the input string with the 'pad_with' string
685684
!>
686685
!> Returns a new string
687-
pure function padl_string_char(string, output_length, pad_with) result(res)
686+
pure function padl_string_pad_with(string, output_length, pad_with) result(res)
688687
type(string_type), intent(in) :: string
689688
integer, intent(in) :: output_length
690689
character(len=1), intent(in) :: pad_with
691690
type(string_type) :: res
692691

693692
res = string_type(padl_char_char(char(string), output_length, pad_with))
694-
end function padl_string_char
693+
end function padl_string_pad_with
695694

696695
!> Left pad the input string with the 'pad_with' string
697696
!>
698697
!> Returns a new string
699-
pure function padl_char_string(string, output_length, pad_with) result(res)
698+
pure function padl_char_default(string, output_length) result(res)
700699
character(len=*), intent(in) :: string
701700
integer, intent(in) :: output_length
702-
type(string_type), intent(in) :: pad_with
703701
character(len=max(len(string), output_length)) :: res
704702

705-
res = padl_char_char(string, output_length, char(pad_with))
706-
end function padl_char_string
703+
res = padl_char_char(string, output_length, " ")
704+
end function padl_char_default
705+
706+
!> Left pad the input string with the 'pad_with' string
707+
!>
708+
!> Returns a new string
709+
pure function padl_char_pad_with(string, output_length, pad_with) result(res)
710+
character(len=*), intent(in) :: string
711+
integer, intent(in) :: output_length
712+
character(len=1), intent(in) :: pad_with
713+
character(len=max(len(string), output_length)) :: res
714+
715+
res = padl_char_char(string, output_length, pad_with)
716+
end function padl_char_pad_with
707717

708718
!> Left pad the input string with the 'pad_with' string
709719
!>
@@ -729,38 +739,48 @@ end function padl_char_char
729739
!> Right pad the input string with the 'pad_with' string
730740
!>
731741
!> Returns a new string
732-
pure function padr_string_string(string, output_length, pad_with) result(res)
742+
pure function padr_string_default(string, output_length) result(res)
733743
type(string_type), intent(in) :: string
734744
integer, intent(in) :: output_length
735-
type(string_type), intent(in) :: pad_with
736745
type(string_type) :: res
737746

738-
res = string_type(padr_char_char(char(string), output_length, char(pad_with)))
739-
end function padr_string_string
747+
res = string_type(padr_char_char(char(string), output_length, " "))
748+
end function padr_string_default
740749

741750
!> Right pad the input string with the 'pad_with' string
742751
!>
743752
!> Returns a new string
744-
pure function padr_string_char(string, output_length, pad_with) result(res)
753+
pure function padr_string_pad_with(string, output_length, pad_with) result(res)
745754
type(string_type), intent(in) :: string
746755
integer, intent(in) :: output_length
747756
character(len=1), intent(in) :: pad_with
748757
type(string_type) :: res
749758

750759
res = string_type(padr_char_char(char(string), output_length, pad_with))
751-
end function padr_string_char
760+
end function padr_string_pad_with
752761

753762
!> Right pad the input string with the 'pad_with' string
754763
!>
755764
!> Returns a new string
756-
pure function padr_char_string(string, output_length, pad_with) result(res)
765+
pure function padr_char_default(string, output_length) result(res)
757766
character(len=*), intent(in) :: string
758767
integer, intent(in) :: output_length
759-
type(string_type), intent(in) :: pad_with
760768
character(len=max(len(string), output_length)) :: res
761769

762-
res = padr_char_char(string, output_length, char(pad_with))
763-
end function padr_char_string
770+
res = padr_char_char(string, output_length, " ")
771+
end function padr_char_default
772+
773+
!> Right pad the input string with the 'pad_with' string
774+
!>
775+
!> Returns a new string
776+
pure function padr_char_pad_with(string, output_length, pad_with) result(res)
777+
character(len=*), intent(in) :: string
778+
integer, intent(in) :: output_length
779+
character(len=1), intent(in) :: pad_with
780+
character(len=max(len(string), output_length)) :: res
781+
782+
res = padr_char_char(string, output_length, pad_with)
783+
end function padr_char_pad_with
764784

765785
!> Right pad the input string with the 'pad_with' character
766786
!>

0 commit comments

Comments
 (0)