Annotation of GNUtools/emacs/src/dir.h, revision 1.1.1.1

1.1       root        1: /* GNU Emacs VMS directory definition file.
                      2:    Copyright (C) 1986 Free Software Foundation, Inc.
                      3: 
                      4: This file is part of GNU Emacs.
                      5: 
                      6: GNU Emacs is free software; you can redistribute it and/or modify
                      7: it under the terms of the GNU General Public License as published by
                      8: the Free Software Foundation; either version 1, or (at your option)
                      9: any later version.
                     10: 
                     11: GNU Emacs is distributed in the hope that it will be useful,
                     12: but WITHOUT ANY WARRANTY; without even the implied warranty of
                     13: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                     14: GNU General Public License for more details.
                     15: 
                     16: You should have received a copy of the GNU General Public License
                     17: along with GNU Emacs; see the file COPYING.  If not, write to
                     18: the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
                     19: 
                     20: /*
                     21:  * Files-11 Ver. 2 directory structure (VMS V4.x - long names)
                     22:  */
                     23: #ifndef DIR$K_LENGTH
                     24: 
                     25: #define        DIR$C_FID       0
                     26: #define        DIR$C_LINKNAME  1
                     27: #define        DIR$K_LENGTH    6
                     28: #define        DIR$C_LENGTH    6
                     29: #define        DIR$S_DIRDEF    6
                     30: #define        DIR$W_SIZE      0
                     31: #define        DIR$W_VERLIMIT  2
                     32: #define        DIR$B_FLAGS     4
                     33: #define        DIR$S_TYPE      3
                     34: #define        DIR$V_TYPE      0
                     35: #define        DIR$V_NEXTREC   6
                     36: #define        DIR$V_PREVREC   7
                     37: #define        DIR$B_NAMECOUNT 5
                     38: #define        DIR$S_NAME      80
                     39: #define        DIR$T_NAME      6
                     40: 
                     41: #define        DIR$K_VERSION   8
                     42: #define        DIR$C_VERSION   8
                     43: #define        DIR$S_DIRDEF1   8
                     44: #define        DIR$W_VERSION   0
                     45: #define        DIR$S_FID       6
                     46: #define        DIR$W_FID       2
                     47: #define        DIR$W_FID_NUM   2
                     48: #define        DIR$W_FID_SEQ   4
                     49: #define        DIR$W_FID_RVN   6
                     50: #define        DIR$B_FID_RVN   6
                     51: #define        DIR$B_FID_NMX   7
                     52: 
                     53: #define        DIR$S_DIRDEF2   1
                     54: #define        DIR$T_LINKNAME  0
                     55: 
                     56: typedef struct dir$_name {
                     57: /*  short dir$w_size;          /* if you read with RMS, it eats this... */
                     58:   short dir$w_verlimit;                        /* maximum number of versions */
                     59:   union {
                     60:     unsigned char dir_b_flags;
                     61: #define dir$b_flags dir__b_flags.dir_b_flags
                     62:     struct {
                     63:       unsigned char dir_v_type: DIR$S_TYPE;
                     64: #define dir$v_type dir__b_flags.dir___b_flags.dir_v_type
                     65:       unsigned char: 3;
                     66:       unsigned char dir_v_nextrec: 1;
                     67: #define dir$v_nextrec dir__b_flags.dir___b_flags.dir_v_nextrec
                     68:       unsigned char dir_v_prevrec: 1;
                     69: #define dir$v_prevrec dir__b_flags.dir___b_flags.dir_v_prevrec
                     70:     } dir___b_flags;
                     71:   } dir__b_flags;
                     72:   unsigned char dir$b_namecount;
                     73: #ifdef __GNUC__
                     74:   char dir$t_name[0];
                     75: #else
                     76:   char dir$t_name[];
                     77: #endif
                     78: } dir$_dirdef;         /* only the fixed first part */
                     79: 
                     80: typedef struct dir$_version {
                     81:   short dir$w_version;
                     82:   short dir$w_fid_num;
                     83:   short dir$w_fid_seq;
                     84:   union {
                     85:     short dir_w_fid_rvn;
                     86: #define dir$w_fid_rvn dir__w_fid_rvn.dir_w_fid_rvn
                     87:     struct {
                     88:       char dir_b_fid_rvn;
                     89: #define dir$b_fid_rvn dir__w_fid_rvn.dir___w_fid_rvn.dir_b_fid_rvn
                     90:       char dir_b_fid_nmx;
                     91: #define dir$b_fid_nmx dir__w_fid_rvn.dir___w_fid_rvn.dir_b_fid_nmx
                     92:     } dir___w_fid_rvn;
                     93:   } dir__w_fid_rvn;
                     94: } dir$_dirdef1;                /* one for each version of the file */
                     95: 
                     96: typedef
                     97: struct dir$_linkname {
                     98: #ifdef __GNUC__
                     99:   char    dir$t_linkname[0];
                    100: #else
                    101:   char    dir$t_linkname[];
                    102: #endif
                    103: } dir$_dirdef2;
                    104: 
                    105: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.