5.26 PLVtkn: Token Table Interface

Chapter 5
PL/Vision Package Specifications
 

The PLVtkn (PL/Vision ToKeN) package provides an interface to the PLV_token table; the package examines this table to determine whether an identifier is a keyword. See Chapter 10 for details.

5.26.1 Package constants

c_any CONSTANT CHAR(1) := '%';
c_syntax CONSTANT CHAR(1) := 'X';
c_builtin CONSTANT CHAR(1) := 'B';
c_symbol CONSTANT CHAR(1) := 'S';
c_exception CONSTANT CHAR(1) := 'E';
c_datatype CONSTANT CHAR(1) := 'D';
c_datadict CONSTANT CHAR(2) := 'DD';
c_sql CONSTANT CHAR(3) := 'SQL';

Each of these constants specify a different type of token or reserved word in the PL/SQL language (except for c_any, of course). They match the values found in the PLV_token_type table. They are used by various programs in the PLVtkn package.

c_plsql CONSTANT CHAR(1) := '%'; /* = c_builtin */
c_od2k CONSTANT CHAR(4) := 'OD2K';
c_of CONSTANT CHAR(2) := 'OF';
c_or CONSTANT CHAR(2) := 'OR';
c_og CONSTANT CHAR(2) := 'OG';

These constants identify different categories or sets of reserved words for the PL/SQL language. The identifier SHOW_ALERT is, for example, a builtin in Oracle Forms, but has no significance in the stored PL/SQL code. Currently PL/Vision is aware of stored PL/SQL and Oracle Forms reserved words only.

5.26.2 The keyword record TYPE

TYPE kw_rectype IS RECORD
(token PLV_token%token,
token_type PLV_token%token_type,
is_keyword BOOLEAN);

A PL/SQL record TYPE defining a record holding information about a token.

5.26.3 Determining type of token

FUNCTION is_keyword
(token_in IN VARCHAR2, type_in IN VARCHAR2 := c_any)
RETURN BOOLEAN;

General function that returns TRUE if the specified token is a keyword or a reserved word in the PL/SQL language. You can, with the type_in argument, ask if the token is a particular type of token. You can also call any of the following more narrowly defined functions:

FUNCTION is_syntax (token_in IN VARCHAR2) RETURN BOOLEAN;
FUNCTION is_builtin (token_in IN VARCHAR2) RETURN BOOLEAN;
FUNCTION is_symbol (token_in IN VARCHAR2) RETURN BOOLEAN;
FUNCTION is_datatype (token_in IN VARCHAR2) RETURN BOOLEAN;
FUNCTION is_exception (token_in IN VARCHAR2) RETURN BOOLEAN;

Each of these functions returns TRUE if the specified token is an identifier of the type indicated by the name of the function.

5.26.4 Retrieving keyword information

PROCEDURE get_keyword (token_in IN VARCHAR2, kw OUT kw_rectype);

Retrieves all the information about the token provided in the parameter list.


5.25 PLVtab: Table Interface5.27 PLVtmr: Program Performance Analyzer

Copyright (c) 2000 O'Reilly & Associates. All rights reserved.



Advanced Oracle PL. SQL Programming with Packages
Advanced Oracle Pl/Sql: Programming With Packages (Nutshell Handbook)
ISBN: B00006AVR6
EAN: N/A
Year: 1995
Pages: 195
Authors: Steven Feuerstein, Debby Russell
BUY ON AMAZON

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net