2001-05-23 15:26:42 +02:00
|
|
|
/*
|
|
|
|
* PROGRAM: JRD Data Definition Utility
|
|
|
|
* MODULE: dyn.h
|
|
|
|
* DESCRIPTION: Dynamic data definition local data
|
|
|
|
*
|
|
|
|
* The contents of this file are subject to the Interbase Public
|
|
|
|
* License Version 1.0 (the "License"); you may not use this file
|
|
|
|
* except in compliance with the License. You may obtain a copy
|
|
|
|
* of the License at http://www.Inprise.com/IPL.html
|
|
|
|
*
|
|
|
|
* Software distributed under the License is distributed on an
|
|
|
|
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
|
|
|
|
* or implied. See the License for the specific language governing
|
|
|
|
* rights and limitations under the License.
|
|
|
|
*
|
|
|
|
* The Original Code was created by Inprise Corporation
|
|
|
|
* and its predecessors. Portions created by Inprise Corporation are
|
|
|
|
* Copyright (C) Inprise Corporation.
|
|
|
|
*
|
|
|
|
* All Rights Reserved.
|
|
|
|
* Contributor(s): ______________________________________.
|
|
|
|
*/
|
|
|
|
|
2003-09-09 13:07:19 +02:00
|
|
|
#ifndef JRD_DYN_H
|
|
|
|
#define JRD_DYN_H
|
2001-05-23 15:26:42 +02:00
|
|
|
|
2007-03-28 06:20:36 +02:00
|
|
|
#include "../common/classes/MsgPrint.h"
|
2010-06-26 03:52:06 +02:00
|
|
|
#include "../common/classes/MetaName.h"
|
|
|
|
#include "../common/classes/array.h"
|
|
|
|
#include "../common/classes/fb_string.h"
|
2010-10-12 10:02:57 +02:00
|
|
|
#include "../common/dsc.h"
|
2007-03-28 06:20:36 +02:00
|
|
|
|
2009-11-26 01:20:59 +01:00
|
|
|
const char* const ALL_PRIVILEGES = "SIUDR"; // all applicable grant/revoke privileges
|
2013-03-07 14:59:03 +01:00
|
|
|
const char* const EXEC_PRIVILEGES = "X"; // execute privilege
|
|
|
|
const char* const USAGE_PRIVILEGES = "G"; // usage privilege
|
2012-01-08 15:05:29 +01:00
|
|
|
|
2004-05-03 23:43:56 +02:00
|
|
|
const int DYN_MSG_FAC = 8;
|
2001-05-23 15:26:42 +02:00
|
|
|
|
|
|
|
|
2004-03-20 15:57:40 +01:00
|
|
|
namespace Jrd {
|
2001-05-23 15:26:42 +02:00
|
|
|
|
2004-03-20 15:57:40 +01:00
|
|
|
class jrd_tra;
|
2010-06-26 03:52:06 +02:00
|
|
|
class thread_db;
|
2004-03-20 15:57:40 +01:00
|
|
|
|
2008-05-10 05:44:57 +02:00
|
|
|
class dyn_fld
|
|
|
|
{
|
2005-05-13 15:50:30 +02:00
|
|
|
public:
|
2004-02-20 07:43:27 +01:00
|
|
|
dsc dyn_dsc;
|
|
|
|
bool dyn_null_flag;
|
2001-05-23 15:26:42 +02:00
|
|
|
USHORT dyn_dtype;
|
|
|
|
USHORT dyn_precision;
|
|
|
|
USHORT dyn_charlen;
|
|
|
|
SSHORT dyn_collation;
|
|
|
|
SSHORT dyn_charset;
|
2009-04-26 03:37:50 +02:00
|
|
|
SSHORT dyn_sub_type;
|
2005-05-12 20:28:04 +02:00
|
|
|
Firebird::MetaName dyn_fld_source;
|
|
|
|
Firebird::MetaName dyn_rel_name;
|
|
|
|
Firebird::MetaName dyn_fld_name;
|
2005-08-14 07:48:20 +02:00
|
|
|
USHORT dyn_charbytelen; // Used to check modify operations on string types.
|
|
|
|
const UCHAR* dyn_default_src;
|
|
|
|
const UCHAR* dyn_default_val;
|
|
|
|
bool dyn_drop_default;
|
2008-01-16 09:46:02 +01:00
|
|
|
const UCHAR* dyn_computed_src;
|
|
|
|
const UCHAR* dyn_computed_val;
|
|
|
|
bool dyn_drop_computed;
|
2005-05-12 20:28:04 +02:00
|
|
|
public:
|
2008-12-05 01:56:15 +01:00
|
|
|
explicit dyn_fld(MemoryPool& p)
|
|
|
|
: dyn_null_flag(false), dyn_dtype(0), dyn_precision(0), dyn_charlen(0),
|
2009-04-26 03:37:50 +02:00
|
|
|
dyn_collation(0), dyn_charset(0), dyn_sub_type(0), dyn_fld_source(p), dyn_rel_name(p),
|
2005-08-14 07:48:20 +02:00
|
|
|
dyn_fld_name(p), dyn_charbytelen(0),
|
2008-01-16 09:46:02 +01:00
|
|
|
dyn_default_src(0), dyn_default_val(0), dyn_drop_default(false),
|
2009-01-03 10:14:29 +01:00
|
|
|
dyn_computed_src(0), dyn_computed_val(0), dyn_drop_computed(false)
|
|
|
|
{ }
|
|
|
|
|
2005-05-13 15:50:30 +02:00
|
|
|
dyn_fld()
|
2008-12-05 01:56:15 +01:00
|
|
|
: dyn_null_flag(false), dyn_dtype(0), dyn_precision(0), dyn_charlen(0),
|
2005-08-14 07:48:20 +02:00
|
|
|
dyn_collation(0), dyn_charset(0), dyn_charbytelen(0),
|
2008-01-16 09:46:02 +01:00
|
|
|
dyn_default_src(0), dyn_default_val(0), dyn_drop_default(false),
|
2009-01-03 10:14:29 +01:00
|
|
|
dyn_computed_src(0), dyn_computed_val(0), dyn_drop_computed(false)
|
|
|
|
{ }
|
2004-03-28 11:10:30 +02:00
|
|
|
};
|
2001-05-23 15:26:42 +02:00
|
|
|
|
2012-02-19 03:17:27 +01:00
|
|
|
} // namespace Jrd
|
2001-05-23 15:26:42 +02:00
|
|
|
|
2003-10-03 03:53:34 +02:00
|
|
|
#endif // JRD_DYN_H
|