generic

    type Unique_Operator_Count is range <>;
    type Unique_Operand_Count is range <>;
    type Total_Operands is range <>;

package Halstead_Error_Proneness is

    --========================================================================
    -- Halstead D^ = (n1 / 2) * (N2 / n2)
    --========================================================================

    type Result is digits 6;
    procedure Of_Any_Program_Unit (N1 : in Unique_Operator_Count;
                                   Lc_N2 : in Unique_Operand_Count;
                                   Uc_N2 : in Total_Operands;
                                   D_Hat : out Result);

end Halstead_Error_Proneness;