NCEPLIBS-bufr  12.0.1
inctab.f
Go to the documentation of this file.
1 C> @file
2 C> @brief Get the next available positional index
3 C> for writing into the internal jump/link table.
4 C>
5 C> @author Woollen @date 1994-01-06
6 
7 C> This subroutine returns the next available positional index
8 C> for writing into the internal jump/link table in module tables,
9 C> and it also uses that index to store atag and atyp within,
10 C> respectively, the internal jump/link table arrays tag(*) and typ(*).
11 C> If there is no more room for additional entries within the internal
12 C> jump/link table, then an appropriate call is made to subroutine bort().
13 C>
14 C> @param[in] ATAG - character*(*): mnemonic name.
15 C> @param[in] ATYP - character*(*): mnemonic type.
16 C> @param[in] NODE - integer: next available positional index for writing
17 C> into the internal jump/link table.
18 C>
19 C> @author Woollen @date 1994-01-06
20  SUBROUTINE inctab(ATAG,ATYP,NODE)
21 
22  USE moda_tables
23 
24  CHARACTER*(*) ATAG,ATYP
25  CHARACTER*128 BORT_STR
26 
27 C-----------------------------------------------------------------------
28 C-----------------------------------------------------------------------
29 
30  ntab = ntab+1
31  IF(ntab.GT.maxtab) GOTO 900
32  tag(ntab) = atag
33  typ(ntab) = atyp
34  node = ntab
35 
36 C EXITS
37 C -----
38 
39  RETURN
40  900 WRITE(bort_str,'("BUFRLIB: INCTAB - THE NUMBER OF JUMP/LINK '//
41  . 'TABLE ENTRIES EXCEEDS THE LIMIT, MAXTAB (",I7,")")') maxtab
42  CALL bort(bort_str)
43  END
subroutine bort(STR)
Log one error message and abort application program.
Definition: bort.f:18
subroutine inctab(ATAG, ATYP, NODE)
This subroutine returns the next available positional index for writing into the internal jump/link t...
Definition: inctab.f:21
This module contains array and variable declarations used to store the internal jump/link table.
integer maxtab
Maximum number of entries in the jump/link table; equivalent to MAXJL.
character *3, dimension(:), allocatable typ
Type indicators corresponding to tag:
character *10, dimension(:), allocatable tag
Mnemonics in the jump/link table.
integer ntab
Number of entries in the jump/link table.