CodeListing 2: Error handling package specification

CREATE OR REPLACE PACKAGE errpkg
IS
   PROCEDURE raise (
      err_in IN INTEGER := SQLCODE
    , msg_in IN VARCHAR2 := NULL
   );

   PROCEDURE record_and_stop (
      err_in IN INTEGER := SQLCODE
    , msg_in IN VARCHAR2 := NULL
   );

   PROCEDURE record_and_continue (
      err_in IN INTEGER := SQLCODE
    , msg_in IN VARCHAR2 := NULL
   );

   FUNCTION errtext (err_in IN INTEGER := SQLCODE)
      RETURN VARCHAR2;
END errpkg;