ch05 16


[Chapter 5] 5.16 PLVlex: Lexical Analysis Chapter 5PL/Vision Package Specifications 5.16 PLVlex: Lexical AnalysisThe PLVlex (PL/Vision LEXical analysis) package provides generic string-parsing extensions to PL/SQL; these extensions include an awareness of the syntax and delimiters of the PL/SQL language. See the companion disk for details.5.16.1 Analyzing PL/SQL string content FUNCTION is_delimiter (character_in IN VARCHAR2, exclude_in IN VARCHAR2 := NULL) RETURN BOOLEAN;Returns TRUE if the string is a PL/SQL delimiter. FUNCTION is_oneline_comment (token_in IN VARCHAR2) RETURN BOOLEAN;Returns TRUE if the string is a single-line comment indicator (a double hyphen). FUNCTION starts_multiline_comment (token_in IN VARCHAR2)RETURN BOOLEAN;Returns TRUE if the string is equal to /*, which signals the start of a multiline or block comment. FUNCTION ends_multiline_comment (token_in IN VARCHAR2)RETURN BOOLEAN;Returns TRUE if the string is equal to */, which signals the end of a multiline or block comment.5.16.2 Scanning PL/SQL strings FUNCTION next_atom_loc (string_in IN VARCHAR2, start_loc_in IN NUMBER)RETURN NUMBER;Returns the location of the beginning of the next PL/SQL atomic in the string. PROCEDURE get_next_atomic (line_in IN VARCHAR2, start_pos_in IN VARCHAR2, atomic_out OUT VARCHAR2, new_start_pos_out OUT INTEGER, line_len_in IN INTEGER := NULL);Gets the next PL/SQL atomic from the string. This procedure builds upon PLVlex.next_atom_loc and several low-level PLVprs functions to scan the string from the perspective of a line of PL/SQL source code. PROCEDURE get_next_token (line_in IN VARCHAR2, start_pos_in IN VARCHAR2, token_out IN OUT VARCHAR2, new_start_pos_out IN OUT INTEGER, skip_spaces_in IN BOOLEAN, line_len_in IN INTEGER := NULL, full_qualified_name_in IN BOOLEAN := FALSE);Gets the next PL/SQL token (which could be composed of multiple atomics) from the string.5.15 PLVio: Input/Output Processing5.17 PLVlog: Logging Facility Copyright (c) 2000 O'Reilly & Associates. All rights reserved.

Wyszukiwarka

Podobne podstrony:
ch05
ch05
ch05(
ch05
ch05
ch05$
CH05
ch05
ch05
ch05
ch05
ch05
ch05
ch05!
ch05
ch05
ch05

więcej podobnych podstron