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 + -
显示快捷键?