Skip to content

Commit f97f037

Browse files
committed
changed interface to keep pad_with as optional
1 parent 0158e92 commit f97f037

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
@@ -587,38 +587,48 @@ end function replace_all_char_char_char
587587
!> Left pad the input string with the 'pad_with' string
588588
!>
589589
!> Returns a new string
590-
pure function padl_string_string(string, output_length, pad_with) result(res)
590+
pure function padl_string_default(string, output_length) result(res)
591591
type(string_type), intent(in) :: string
592592
integer, intent(in) :: output_length
593-
type(string_type), intent(in) :: pad_with
594593
type(string_type) :: res
595594

596-
res = string_type(padl_char_char(char(string), output_length, char(pad_with)))
597-
end function padl_string_string
595+
res = string_type(padl_char_char(char(string), output_length, " "))
596+
end function padl_string_default
598597

599598
!> Left pad the input string with the 'pad_with' string
600599
!>
601600
!> Returns a new string
602-
pure function padl_string_char(string, output_length, pad_with) result(res)
601+
pure function padl_string_pad_with(string, output_length, pad_with) result(res)
603602
type(string_type), intent(in) :: string
604603
integer, intent(in) :: output_length
605604
character(len=1), intent(in) :: pad_with
606605
type(string_type) :: res
607606

608607
res = string_type(padl_char_char(char(string), output_length, pad_with))
609-
end function padl_string_char
608+
end function padl_string_pad_with
610609

611610
!> Left pad the input string with the 'pad_with' string
612611
!>
613612
!> Returns a new string
614-
pure function padl_char_string(string, output_length, pad_with) result(res)
613+
pure function padl_char_default(string, output_length) result(res)
615614
character(len=*), intent(in) :: string
616615
integer, intent(in) :: output_length
617-
type(string_type), intent(in) :: pad_with
618616
character(len=max(len(string), output_length)) :: res
619617

620-
res = padl_char_char(string, output_length, char(pad_with))
621-
end function padl_char_string
618+
res = padl_char_char(string, output_length, " ")
619+
end function padl_char_default
620+
621+
!> Left pad the input string with the 'pad_with' string
622+
!>
623+
!> Returns a new string
624+
pure function padl_char_pad_with(string, output_length, pad_with) result(res)
625+
character(len=*), intent(in) :: string
626+
integer, intent(in) :: output_length
627+
character(len=1), intent(in) :: pad_with
628+
character(len=max(len(string), output_length)) :: res
629+
630+
res = padl_char_char(string, output_length, pad_with)
631+
end function padl_char_pad_with
622632

623633
!> Left pad the input string with the 'pad_with' string
624634
!>
@@ -644,38 +654,48 @@ end function padl_char_char
644654
!> Right pad the input string with the 'pad_with' string
645655
!>
646656
!> Returns a new string
647-
pure function padr_string_string(string, output_length, pad_with) result(res)
657+
pure function padr_string_default(string, output_length) result(res)
648658
type(string_type), intent(in) :: string
649659
integer, intent(in) :: output_length
650-
type(string_type), intent(in) :: pad_with
651660
type(string_type) :: res
652661

653-
res = string_type(padr_char_char(char(string), output_length, char(pad_with)))
654-
end function padr_string_string
662+
res = string_type(padr_char_char(char(string), output_length, " "))
663+
end function padr_string_default
655664

656665
!> Right pad the input string with the 'pad_with' string
657666
!>
658667
!> Returns a new string
659-
pure function padr_string_char(string, output_length, pad_with) result(res)
668+
pure function padr_string_pad_with(string, output_length, pad_with) result(res)
660669
type(string_type), intent(in) :: string
661670
integer, intent(in) :: output_length
662671
character(len=1), intent(in) :: pad_with
663672
type(string_type) :: res
664673

665674
res = string_type(padr_char_char(char(string), output_length, pad_with))
666-
end function padr_string_char
675+
end function padr_string_pad_with
667676

668677
!> Right pad the input string with the 'pad_with' string
669678
!>
670679
!> Returns a new string
671-
pure function padr_char_string(string, output_length, pad_with) result(res)
680+
pure function padr_char_default(string, output_length) result(res)
672681
character(len=*), intent(in) :: string
673682
integer, intent(in) :: output_length
674-
type(string_type), intent(in) :: pad_with
675683
character(len=max(len(string), output_length)) :: res
676684

677-
res = padr_char_char(string, output_length, char(pad_with))
678-
end function padr_char_string
685+
res = padr_char_char(string, output_length, " ")
686+
end function padr_char_default
687+
688+
!> Right pad the input string with the 'pad_with' string
689+
!>
690+
!> Returns a new string
691+
pure function padr_char_pad_with(string, output_length, pad_with) result(res)
692+
character(len=*), intent(in) :: string
693+
integer, intent(in) :: output_length
694+
character(len=1), intent(in) :: pad_with
695+
character(len=max(len(string), output_length)) :: res
696+
697+
res = padr_char_char(string, output_length, pad_with)
698+
end function padr_char_pad_with
679699

680700
!> Right pad the input string with the 'pad_with' character
681701
!>

0 commit comments

Comments
 (0)