ddldefs.h
来自「db.* (pronounced dee-be star) is an adva」· C头文件 代码 · 共 159 行
H
159 行
/*************************************************************************** * * * db.* * * open source database kernel * * * * Copyright (c) 2000 Centura Software Corporation. All rights reserved. * * * * Use of this software, whether in source code format, or in executable, * * binary object code form, is governed by the CENTURA OPEN SOURCE LICENSE * * which is fully described in the LICENSE.TXT file, included within this * * distribution of source code files. * * * * Except as provided herein, the contents of this file are subject to the * * Centura Open Source Public License Version 1.0 (the "License"); you may * * not use this file except in compliance with the License. A copy of the * * License will be provided to you by Club ITTIA. * * * * 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 is db.linux version 1.0, released February 29, 2000. * * * * The Initial Developer of the Original Code is Centura Software * * Corporation. Portions created by Centura Software Corporation are * * Copyright (C) 1984-2000 Centura Software Corporation. All Rights * * Reserved. * * * * This file contains modifications to the Original Code made by ITTIA. * * This file may only be used in accordance with the ITTIA DB.* V.2 * * License Agreement which is available at WWW.ITTIA.COM. * * * **************************************************************************//*------------------------------------------------------------------------ db.* Database Definition Language Processor ddldefs.h------------------------------------------------------------------------*/#define BYTE_ALIGN (-1)#define DEF_ALIGN 3#define CHR_ALIGN 0 #define SHT_ALIGN 1#define REG_ALIGN 2#define DBL_ALIGN 3#define MAX_ALIGNS 4#define HOST_ENDIAN 0#ifndef LITTLE_ENDIAN#define LITTLE_ENDIAN 1234#endif#ifndef BIG_ENDIAN#define BIG_ENDIAN 4321#endifvoid pr_structs (void);void pr_constants (void);void write_header (void);void write_dm_header (void);struct field_info *pr_decl (register struct field_info *);extern int yydebug;/* All global variables are in one structure, to reduce naming conflicts on VxWorks.*/typedef struct _DDLP_G{ /* option flags */ int d_flag; /* allow duplicate field names */#ifndef NO_PREPRO int i_flag; /* include path for compiler pre-processor */#endif int n_flag; /* don't include record, field, set names in .dbd file */ int r_flag; /* report option flag */ int s_flag; /* case sensitivity - default is case sensitive */ int u_flag; /* input and output files in Unicode text */ int x_flag; /* print identifier cross reference */ int z_flag; /* don't include SIZEOF_??? consts */ int c_flag; /* produce C source file */ int byte_order; /* produce dbd file with defined byte order*/ SG *sg; /* SafeGarde control block */ /* file handles */ FILE *schema; FILE *ifile; FILE *outfile; /* handle on normal destination for output */ /* file names */ DB_TCHAR db_name[FILENMLEN]; DB_TCHAR ddlfile[FILENMLEN]; DB_TCHAR ifn[FILENMLEN]; DB_TCHAR msg[FILENMLEN * 3]; /* padding boundaries */ unsigned short str_pad[MAX_ALIGNS]; /* non-arrayed struct */ unsigned short str_array_pad[MAX_ALIGNS]; /* arrayed struct */ int tot_errs; /* total errors encountered */ int line; /* current input line number */ int abort_flag; /* mainly for VxWorks - cannot call exit() */ FILE_ENTRY ft_entry; RECORD_ENTRY rt_entry; FIELD_ENTRY fd_entry; SET_ENTRY st_entry; KEY_ENTRY kt_entry; MEMBER_ENTRY mt_entry; /* tables used in ddltable.c: */ ELEM_INFO *elem_list; ELEM_INFO *elem_last; short tot_files; short tot_records; short tot_fields; short tot_sets; short tot_members; short tot_sort_fields; short tot_comkeyflds; struct file_info *file_list; struct file_info *file_last; struct record_info *rec_list; struct record_info *last_rec; struct field_info *field_list; struct field_info *last_fld; struct field_info *cur_struct; struct set_info *set_list; struct set_info *last_set; struct member_info *mem_list; struct member_info *last_mem; struct ddlkey_info *key_list; struct ddlkey_info *last_key; struct sort_info *sort_list; struct sort_info *last_sort;} DDLP_G;extern DDLP_G ddlp_g;short calc_align(int, unsigned char, unsigned short);void init_align(void);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?