with String_Utilities;
with Simple_Text_Io;
package body Silly_String_Utilities is

    function Number_Of_Characters
                (C : Character; In_String : String) return Integer is
        Number : Integer := 0;
    begin
        for I in In_String'First .. In_String'Last loop
            if In_String (I) = C then
                Number := Number + 1;
            end if;
        end loop;
        return Number;
    end Number_Of_Characters;

    function Contains_Character
                (C : Character; In_String : String) return Boolean is
    begin
        for I in In_String'First .. In_String'Last loop
            if In_String (I) = C then
                return True;
            end if;
        end loop;
        return False;
    end Contains_Character;

    procedure Put_Line (S : String) is
    begin
        Simple_Text_Io.Put_Line (S);
    end Put_Line;
    function Begins_With
                (Fragment : String; In_String : String) return Boolean is
    begin
        return String_Utilities.Locate (Fragment, In_String) = 1;
    end Begins_With;
    function Strip_Leading
                (C : Character := ' '; From_String : String) return String is
    begin
        return String_Utilities.Strip (From => From_String, Filler => C);
    end Strip_Leading;
end Silly_String_Utilities;