with Line_Utilities; with Bounded_String; package Unit_Stats is type Statistics is private; function Evaluate (File : String) return Statistics; function Total_Lines (Within : Statistics) return Integer; function Count (Of_Kind : Line_Utilities.Line_Type; Within : Statistics) return Integer; function Percentage_Whitespace (S : Statistics) return Integer; private type Kind_Count is array (Line_Utilities.Line_Type) of Integer; type Statistics is record Total_Lines : Integer; Counts : Kind_Count; end record; end Unit_Stats;