The PLVprsps (PL/Vision PaRSe
PL/SQL
) package is a more specialized string parser than PRSprs; it parses
PL/SQL
source code into its separate atomics. See
Chapter 10
for details.
The following constants are used to specify the types of tokens to be preserved when
PL/SQL
source code is parsed.
-
c_all_tokens CONSTANT VARCHAR2(1) := 'A';
-
Specifies "all tokens".
-
c_kw_tokens CONSTANT VARCHAR2(1) := 'K';
-
Specifies "keywords only".
-
c_nonkw_tokens CONSTANT VARCHAR2(1) := 'N';
-
Specifies "non-keywords only" or application-specific identifiers.
-
c_bi_tokens CONSTANT VARCHAR2(1) := 'B';
-
Specifies keywords that are builtins.
-
PROCEDURE keep_all;
-
Specifies that when a
PL/SQL
string is parsed, all tokens are to be kept (stored in a
PL/SQL
table).
-
PROCEDURE keep_kw;
-
Specifies that when a
PL/SQL
string is parsed, only keywords are to be kept.
-
PROCEDURE keep_nonkw;
-
Specifies that when a
PL/SQL
string is parsed, only non-keywords are to be kept.
-
PROCEDURE keep_bi;
-
Specifies that when a
PL/SQL
string is parsed, only keywords that are builtins are to be kept.
-
PROCEDURE nokeep_all;
-
Specifies that when a
PL/SQL
string is parsed, all tokens are to be ignored.
-
PROCEDURE nokeep_kw;
-
Specifies that when a
PL/SQL
string is parsed, all keywords are to be ignored.
-
PROCEDURE nokeep_nonkw;
-
Specifies that when a
PL/SQL
string is parsed, only non-keywords are to be ignored.
-
PROCEDURE nokeep_bi;
-
Specifies that when a
PL/SQL
string is parsed, only builtin keywords are to be ignored.
-
PROCEDURE init_table
-
(tokens_out IN OUT PLVtab.vc2000_table,
-
num_tokens_out IN OUT INTEGER);
-
Initializes (to empty) a
PL/SQL
table that will hold the parsed tokens.
-
PROCEDURE plsql_string
-
(line_in IN VARCHAR2,
-
tokens_out IN OUT PLVtab.vc2000_table,
-
num_tokens_out IN OUT INTEGER,
-
in_multiline_comment_out IN OUT BOOLEAN);
-
Parses a single line of code -- a
PL/SQL
string -- and deposits the separate tokens in the
PL/SQL
table. It also passes back a Boolean flag to indicate whether, at the end of this string, the code is within a multiline comment block.
-
PROCEDURE module
-
(module_in IN VARCHAR2 := NULL,
-
tokens_out IN OUT PLVtab.vc2000_table,
-
num_tokens_out IN OUT INTEGER);
-
Parses all the lines of code for the specified program.
-
PROCEDURE module
-
(tokens_out IN OUT PLVtab.vc2000_table,
-
num_tokens_out IN OUT INTEGER);
-
Parses all the lines of code for the current object as specified by the PLVobj package.
Copyright (c) 2000 O'Reilly & Associates. All rights reserved.
|
|