📄 plglst.sps
字号:
CREATE OR REPLACE PACKAGE PLGlst
/*----------------------------------------------------------------
|| PL/Vision Professional
||----------------------------------------------------------------
|| File: plglst.sps
|| Author: Steven Feuerstein
||
|| This is a part of the PL/Vision Professional Code library.
|| Copyright (C) 1996-99 Quest Software, Inc.
|| All rights reserved.
||
|| For more information, call Quest Software at 1-800-REVEAL4
|| or check out our Web page: www.Quest Software.com
*/
IS
/* Set of exceptions specific to and raised by the package */
list_undefined EXCEPTION;
list_full EXCEPTION;
out_of_bounds EXCEPTION;
c_maxitems CONSTANT PLS_INTEGER := 100000;
/* Set maximum number of items allowed in list */
PROCEDURE set_maxitems (max_in IN PLS_INTEGER := c_maxitems);
FUNCTION maxitems RETURN PLS_INTEGER;
/* Returns TRUE if list has been allocated. */
FUNCTION is_made (list_in IN VARCHAR2) RETURN BOOLEAN;
FUNCTION is_made (list_in IN PLS_INTEGER) RETURN BOOLEAN;
/* The number of items currently in the list. */
FUNCTION nitems (list_in IN VARCHAR2) RETURN PLS_INTEGER;
FUNCTION nitems
(list_in IN PLS_INTEGER, validate_in IN BOOLEAN := TRUE)
RETURN PLS_INTEGER;
/* Append an item onto the end of the list. */
PROCEDURE appenditem (list_in IN VARCHAR2, item_in IN VARCHAR2);
PROCEDURE appenditem (list_in IN PLS_INTEGER, item_in IN VARCHAR2);
/* Destroy the list, freeing up associated memory. */
PROCEDURE destroy (list_in IN VARCHAR2, keep_list_in IN BOOLEAN := FALSE);
PROCEDURE destroy (list_in IN PLS_INTEGER, keep_list_in IN BOOLEAN := FALSE);
/* Delete the specified item from the list. */
PROCEDURE deleteitem
(list_in IN VARCHAR2, item_in IN VARCHAR2, all_in IN BOOLEAN := FALSE);
PROCEDURE deleteitem
(list_in IN PLS_INTEGER, item_in IN VARCHAR2, all_in IN BOOLEAN := FALSE);
/* Delete the Nth item from the list. */
PROCEDURE deleteitem (list_in IN VARCHAR2, pos_in IN PLS_INTEGER);
PROCEDURE deleteitem (list_in IN PLS_INTEGER, pos_in IN PLS_INTEGER);
/* Get the Nth item from the list. */
FUNCTION getitem (list_in IN VARCHAR2, pos_in IN PLS_INTEGER) RETURN VARCHAR2;
FUNCTION getitem (list_in IN PLS_INTEGER, pos_in IN PLS_INTEGER) RETURN VARCHAR2;
/* Get the position of the specified item in the list. */
FUNCTION getposition (list_in IN VARCHAR2, item_in IN VARCHAR2)
RETURN PLS_INTEGER;
FUNCTION getposition (list_in IN PLS_INTEGER, item_in IN VARCHAR2)
RETURN PLS_INTEGER;
/* Insert an item at the specified position in the list. */
PROCEDURE insertitem
(list_in IN VARCHAR2, pos_in IN PLS_INTEGER, item_in IN VARCHAR2);
PROCEDURE insertitem
(list_in IN PLS_INTEGER, pos_in IN PLS_INTEGER, item_in IN VARCHAR2);
/* Make a new list of the specified name. */
PROCEDURE make
(list_in IN VARCHAR2,
overwrite_in IN BOOLEAN := FALSE,
maxlen_in IN PLS_INTEGER := PLGadmin.dbmax_len);
FUNCTION make
(list_in IN VARCHAR2,
overwrite_in IN BOOLEAN := FALSE,
maxlen_in IN PLS_INTEGER := PLGadmin.dbmax_len)
RETURN PLS_INTEGER;
FUNCTION make
(overwrite_in IN BOOLEAN := FALSE,
maxlen_in IN PLS_INTEGER := PLGadmin.dbmax_len)
RETURN PLS_INTEGER;
/* Insert an item at the first position of the list. */
PROCEDURE prependitem (list_in IN VARCHAR2, item_in IN VARCHAR2);
PROCEDURE prependitem (list_in IN PLS_INTEGER, item_in IN VARCHAR2);
/* Replace the Nth item in the list with the new item. */
PROCEDURE replaceitem
(list_in IN VARCHAR2, pos_in IN PLS_INTEGER, item_in IN VARCHAR2);
PROCEDURE replaceitem
(list_in IN PLS_INTEGER, pos_in IN PLS_INTEGER, item_in IN VARCHAR2);
/* Display/retrieve information about list. */
PROCEDURE display (list_in IN VARCHAR2);
PROCEDURE display (list_in IN PLS_INTEGER);
PROCEDURE show (list_in IN VARCHAR2);
PROCEDURE show (list_in IN PLS_INTEGER, name_in IN VARCHAR2 := NULL);
PROCEDURE showall;
FUNCTION name (list_in IN PLS_INTEGER) RETURN VARCHAR2;
FUNCTION id (list_in IN VARCHAR2) RETURN PLS_INTEGER;
END PLGlst;
/
rem show errors
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -