18.1. PLVcase: Converting the Case of PL/SQL Programs
The PLVcase conversion package converts the case of PL/SQL source code according to the UPPER-lower method: all reserved words are converted to upper-case, while all application-specific identifiers are converted to lowercase. The consistency of case in a program—and, in particular, the UPPER-lower standard—aids greatly in the ability of developers to read, understand, and maintain their (and others') code.
Consider the following package body definition:
create or replace package body testcase is procedure save (string_in in varchar2) is n integer := dbms_sql.open_cursor; begin update PLV_output set program = string_in; if sql%rowcount = 0 then insert into PLV_output values (string_in); end if; PLVcmt.perform_commit; end; end testcase; /
This program is consistently indented to reveal the logical flow of the save procedure defined in the testcase package. Yet it is still difficult to read. With all the text in lowercase, the syntax and logic blurs into an indistinguishable stream of characters.
Here is the same package body after being passed through PLVcase:
PACKAGE BODY testcase IS PROCEDURE save (string_in IN VARCHAR2) IS n INTEGER := DBMS_SQL.OPEN_CURSOR; BEGIN UPDATE PLV_output SET program = string_in; IF SQL%ROWCOUNT = 0 THEN INSERT INTO PLV_output VALUES (string_in); END IF; PLVcmt.perform_commit; END; END testcase;
PLVcase is a general-purpose engine for case conversion. It relies on many different packages in PL/Vision ...