EICD1 - Language definition table

       DESCRIPTIVE NAME = CICS TS language definition (LD) table
                          structure definiton.
           This COPY module is edited by DFHUDECL EXEC during PLI
           generates (such as for DFHUTG) that require the LD table
           structure definition and is included as DFHUDECL.
           Licensed Materials - Property of IBM
            Restricted Materials of IBM 
           5655-Y04
           (C) Copyright IBM Corp. 1981, 2012 
      FUNCTION =
         Declarations relating to language definition table (LD table).
         The declarations below define the mapping of the contents of
         the language definition table.
         The declarations are used by both the translator itself and
         the table compilation utility program DFHUTG.
           EIT is the root of the LD table and gives addressability
           to all its components and their sizes.
Table 1.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 136 EIT
     Following entries in pairs consisting of (ptr, no. of entries)
(0) ADDRESS 4 TABXPTR
(4) FULLWORD 4 NTABS Table entries
(8) ADDRESS 4 STTXPTR
(C) FULLWORD 4 NSTTS Standard text - VBPA
(10) ADDRESS 4 CTLXPTR
(14) FULLWORD 4 NCTLS Controls - VBPA
(18) ADDRESS 4 KEEXPTR
(1C) FULLWORD 4 NKEYS Keyword information *
(20) ADDRESS 4 VBPXPTR
(24) FULLWORD 4 NVBPS Verb parms
(28) ADDRESS 4 KEPXPTR
(2C) FULLWORD 4 NKEPS Keyword parms
(30) ADDRESS 4 SYNXPTR
(34) FULLWORD 4 NSYNS Syntax tree
(38) ADDRESS 4 SPAXPTR
(3C) FULLWORD 4 TSYNS Reserved
(40) ADDRESS 4 NAMXPTR
(44) FULLWORD 4 LNAME Table name
(48) ADDRESS 4 AIBXPTR
(4C) FULLWORD 4 NAIBS IB format (EIB, DIB) *
(50) ADDRESS 4 CODXPTR
(54) FULLWORD 4 NCODS Address of code gen *
(58) ADDRESS 4 BIFXPTR Address of first BIF *
(5C) CHARACTER 4 COMPATF Compatibility flags *
(5C) CHARACTER 0 COMPATF0 To suit DFHUAI
(5C) 1... ....   COMPNEWF Extra fields in hdr *
(5C) .1.. ....   COMPKPAR New style kwd parms *
(5C) ..1. ....   COMPBIF BIF's present
(5C) BIT(29) POS(4) 4 * Guaranteed zero now *
(60) ADDRESS 4 *
(64) FULLWORD 4 LA0 Length of ARG0 *
(68) ADDRESS 4 * Reserved
(6C) FULLWORD 4 NBYTS Table End and size *
(70) ADDRESS 4 KKKXPTR New style kwd parms * (NKEPS of them)
(74) ADDRESS 4 * Reserved *
(78) ADDRESS 4 * Reserved *
(7C) ADDRESS 4 * Reserved *
(80) ADDRESS 4 * Reserved *
(84) ADDRESS 4 * Reserved *
           Table Entry: Describes the syntax and code generation
            parameters for one HLPI statement ( One VERB/ADVERB
            combination.)
Table 2.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 10 TABINFO
(0) BIT(8) 1 TABFLAGS Verb flags
(1) HALFWORD 2 TABVB Index in XKERAY of Verb
(3) HALFWORD 2 TABADVB Index in XKERAY of Adverb
(5) CHARACTER 3 TABOPND Syntax of STMT :
(5) BIT(8) 1 TABOPFLG See operand
(6) HALFWORD 2 TABOP declaration
    Verb parameters for code generation. E.G.
     TABPA(1)=Entry name
     TABPA(2)=Function code
          See declaration of PARITEM for Verb parameter string
(8) UNSIGNED 1 TABPA (2) Index in XVBPA
(A) CHARACTER 0 TABEND
Table 3.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 1 *
(0) 1111 ....   VBADVIDX must not be affected
(0) .... 1...   SECNDTAB Indicates indirection
(0) .... .1..   SAMEVERB Rescan second TAB using same atom
(0) .... ..1.   USEEITBS Rescan DFHEITBS using same atom
(0) .... ...1   * Reserved
         Standard text:
         This is to be included at the head of every preprocessed
         program by module DFHEIM10.
         The number of lines of standard text is NSTTS
Table 4.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 71 XSTT1 First standard text line
(0) CHARACTER 1 * Filler - Always blank
(1) CHARACTER 62 STT1 Text to be inserted into program
(3F) CHARACTER 8 STTC Language indicators
           XKERAY: Table of keyword names and keyword parameters.
           This array is indexed by terminal nodes in syntax tree.
Table 5.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 24 XKERAY (256)
(0) CHARACTER 12 KEYWORDA
(C) CHARACTER 12 * Dependant on XKEITEM size
      When changing the size of this structure, the size of the CHAR
      above must be changed and also the KEYWORD_SPACE declaration in
      DFHUTG. You may also need to change DFHUAI to generate the
      assembler for new fields.
Table 6.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 24 XKEITEM
(0) CHARACTER 12 KEYWORD Keyword name
(C) CHARACTER 1 KEFLG1 Collection of flags
(D) CHARACTER 1 KEBITS Keyword flags
(E) BIT(8) 1 KEFLAGS Set by flag option on keyword
         input. See overlay below.
(F) CHARACTER 1 KETYPE Note: KEDTYP may imply more
(10) UNSIGNED 1 KENARG max number of arguments
(11) BIT(8) 1 KEDTYP Data type - KEDTYP=0 means dont care BIT1 Arithmetic BIT2 String BIT1=0 and BIT2=0 Other BIT3 0-Binary 1-Decimal BIT3 0-Bit 1-Char BIT4 0-Fixed 1-Float BIT6 1-Fixed Bin(64)
(12) UNSIGNED 1 KEDTYPL Length of datatype
(13) UNSIGNED 1 KEP (3) KEYQUIVI or code gen parameters *
(16) CHARACTER 1 KEFLG2 Additional flags
(17) CHARACTER 1 KEFLG3 Reserved for future use
(18) CHARACTER 0 KEEND End of KEINFO
Table 7.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 1 *
(0) 1... ....   KEIDXTN Keyword used as id extension
(0) .1.. ....   KEARGOM ARGLIST may be omitted entirely
(0) ..1. ....   KEARGSH ARGLIST may be shortened
(0) ...1 ....   KEARGNU Any ARGS may be null
(0) .... 1...   KEARGFI First argument mandatory
(0) .... .1..   KEQUIV KEP(1) gives equivalent text
(0) .... ..1.   KESECND Second keyword of a double
(0) .... ...1   KETIME Time type of argument
Table 8.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 1 *
(0) 1... ....   KEREF64 Reference to 64-bit data
(0) .1.. ....   KECVDA
(0) ..11 1111   RESERVED
Table 9.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 1 *
(0) 111. ....   KEPNUM KEP numeric, not index in XKEPA
(0) ...1 ....   KECOMM Keyword valid for any command
(0) .... 1...   KEDEFT Keyword is a default
(0) .... .1..   KEARGSYN Keyword arguments -KEDTYP, KEDTYPL and KEP(1) are a syntax operand
(0) .... ..1.   KEUTF8 UTF8 type kywd (was KERELSYN)
(0) .... ...1   KEMCASE Mixed case required flag
Table 10.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 1 *
(0) 1... ....   KEREF ARGS all references
(0) .1.. ....   KEID ARGS all identifiers
(0) ..1. ....   KECONST ARGS constants - Use also KEDTYP
(0) ...1 1...   KEADIM Dimensionality (00 means Scalar)
(0) .... .1..   KEUSED 'USES' Context
(0) .... ..1.   KESET 'SETS' Context
(0) .... ...1   KENAME Add quotes if identifier.
Table 11.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 1 *
(0) 1... ....   KEHEX Display in hexadecimal (EDF)
(0) .1.. ....   KELIST Argument may be a list (MT)
(0) ..1. ....   KETUNOFF T#BITNUM bit to be turned off, not on
(0) ...1 ....   KE2BIT KEP(3) is another bit to be turned on. This bit off means KEP(3) is default arg text.
(0) .... 1...   KEINQO Only valid with inquire (MT)
(0) .... .1..   KESETO Only valid with set (MT)
(0) .... ..1.   KEARGMAN Mandatory argument
(0) .... ...1   KEDUMMY Dummy keyword
Table 12.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 16 XKEITEM1 Overlay of XKEITEM
(0) CHARACTER 12 KEYWORD1 Keyword name
(C) BIT(32) 4 KEFLGS Keyword flags
Table 13.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 100 PARITEM
(0) UNSIGNED 1 PALEN Length of PARM, excl this byte
(1) CHARACTER 99 PARM Text of PARM
        This section describes the structure of BIF entries defined
        by the %BIF items in the data file of the LD table.
        Because they are variable size they are chained together via
        the BIFNEXT field. The anchor of the chain is BIFXPTR in the
        header to this table.
Table 14.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 20421 BIFENTRY
(0) CHARACTER 12 BIFNAME 'DFHDATASET', etc.
(C) BIT(8) 1 BIFFLAGS Reserved *
(D) ADDRESS 4 BIFNEXT 0 for last in chain *
(11) FULLWORD 4 BIFNEQUS Number of CVDA'S
(15) CHARACTER 17 BIFEQUSA (1200)
(15) CHARACTER 12 BIFARG 'ENABLED', etc.
(21) FULLWORD 4 BIFCVDA 128, 129, etc.
(25) BIT(8) 1 BIFCVDFL Reserved *
        XSYNTAX: Format of each node in the XSYNTAX structure is
        given by the SY structure below.
Table 15.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 7 SY A node in the syntax tree
(0) CHARACTER 1 OPCODE '|' (Or) 'J' (Join) 'R' (Repeat) - Unary OP
(1) CHARACTER 3 OPERAND1 First arm of the node
(1) CHARACTER 1 OP1FLG OPERAND1 Flags
(1) 1... ....   OP1SYNI OPERAND1 is offset in XSYNTAX
(1) .1.. ....   OP1KE OPERAND1 is index in XKERAY
(1) ..1. ....   OP1NULL OPERAND1 is null
(1) ...1 ....   OP1OPL OPERAND1 is optional
(1) .... 1...   OP1PAREN OPERAND1 is parenthesized
(1) .... .111   * Reserved
(2) HALFWORD 2 OP1 Operand 1
(4) CHARACTER 3 OPERAND2 Second arm of the node
(4) CHARACTER 1 OP2FLG OPERAND2 flags
(4) 1... ....   OP2SYNI OPERAND2 is offset in XSYNTAX
(4) .1.. ....   OP2KE OPERAND2 is index in XKERAY
(4) ..1. ....   OP2NULL OPERAND2 is null
(4) ...1 ....   OP2OPL OPERAND2 is optional
(4) .... 1...   OP2PAREN OPERAND2 is parenthesized
(4) .... .111   * RESERVED
(5) HALFWORD 2 OP2 Operand 2
Table 16.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 7 SY1 Overlay of SY
(0) CHARACTER 1 OPCODE1 See OPCODE
(1) BIT(8) 1 OP1FLAGS See OP1FLG
(2) HALFWORD 2 OP11 See OP1
(4) BIT(8) 1 OP2FLAGS See OP2FLG
(5) HALFWORD 2 OP21 See OP2
Table 17.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 3 OPERAND General purpose operand, i.e. overlays OPERAND1 or OPERAND2
(0) CHARACTER 1 OPFLG Operand flags
(0) 1... ....   OPSYNI OP is an index into the syntax tree *
(0) .1.. ....   OPKE OP is an index into the keywords array *
(0) ..1. ....   OPNULL Indicates a null operand
(0) ...1 ....   OPOPL Indicates an optional operand
(0) .... 1...   OPPAREN Indicates a parenthesized operand
(0) .... .111   * Filler - See OPERAND1 or OPERAND2
(1) HALFWORD 2 OP An index
Table 18.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 16 XCOMROOT
(0) ADDRESS 4 COMXPTR
(4) FULLWORD 4 NUMCMDS Commands
(8) ADDRESS 4 KEYXPTR
(C) FULLWORD 4 NUMKYS arguments/keywords
Table 19.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 14 COMINFO
(0) CHARACTER 8 COMGRFN gr & fn for sort compare
(8) HALFWORD 2 COMARG0LN ARG0 len. 0 for type2/3/4.
(A) HALFWORD 2 COMKEYS Number of keywords
(C) HALFWORD 2 COMIND Index of first
(E) CHARACTER 0 COMEND
Table 20.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 8 *
(0) FULLWORD 4 COMGR Group code
(4) FULLWORD 4 COMFN Function code
           Table Entry: Describes one command for ICCFCTAB
Table 21.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 52 DTCINFO
(0) CHARACTER 24 DTCARG0 Arg0
(18) HALFWORD 2 DTCKEYS Number of keywords
(1A) HALFWORD 2 DTCIND index of first
(1C) CHARACTER 12 DTCVERB
(28) CHARACTER 12 DTCADVB
(34) CHARACTER 0 DTCEND
Table 22.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 3 KEYITEM
(0) CHARACTER 3 KEYCOMMON Common to DFHEITTR and DFHEITT2
(0) UNSIGNED 1 KEYCODE Type of keyword - see the code
(1) UNSIGNED 1 KEYBIT1 Bit to test
(2) UNSIGNED 1 KEYBIT2 Bit to test
(3) CHARACTER 0 KEYSPECIFIC Different for DFHEITTR/EITT2
Table 23.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 12 KEYEITT2 DFHEITT2 specific
(0) CHARACTER 12 KEYWRD Keyword value
(C) CHARACTER 0 KEYEND2 End of KEYITEM for DFHEITT2
Table 24.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 3 KEYEITTR DFHEITTR specific
(0) UNSIGNED 1 KEYARG Argument number
(1) UNSIGNED 1 KEYARGL Length of datatype
(2) BIT(8) 1 KEYDTYP Data type - KEYDTYP=0 means dont care BIT1 Arithmetic BIT2 String BIT1=0 and BIT2=0 Other BIT3 0-Binary 1-Decimal BIT3 0-Bit 1-Char BIT4 0-Fixed 1-Float BIT6 1-Fixed Bin(64)
(3) CHARACTER 0 KEYEND1 End of KEYITEM for DFHEITTR
     -------------------------------------------------------------------
     KEYITEMO: Keyword description in DFHEITHG for Hired Gun
     -------------------------------------------------------------------
Table 25.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 12 KEYITEMO
(0) FULLWORD 4 KEYARGO Arg offset
(4) FULLWORD 4 KEYWORDO Word offset
(8) BIT(32) 4 KEYBITM Bit mask
(C) CHARACTER 0 KEYENDO End of KEYITEM for DFHEITHG
     -------------------------------------------------------------------
     KEYDTC: Keyword description for ICCFCTAB
     -------------------------------------------------------------------
Table 26.
Offset Hex Type Len Name (Dim) Description
(0) STRUCTURE 24 KEYDTC
(0) HALFWORD 2 KEYNUMD Number
(2) CHARACTER 22 KEYSAVED data
(2) CHARACTER 12 KEYWORDD
(E) CHARACTER 10 KEYDATAD
(18) CHARACTER 0 KEYENDD End of KEYITEM for ICCFCTAB

Constants

Table 27.
Len Type Value Name Description
1 DECIMAL 255 STOPPER