Rational Developer for System z
Enterprise PL/I for z/OS, Version 3.8, プログラミング・ガイド

トークン・レコード

各トークン・レコードでは、トークン索引と呼ばれる 1 つの番号が割り当てられます。後のレコードで PL/I コンパイラーに認識されるトークンを参照するときは、この番号が使用されます。 また、このレコードは、トークンのタイプに加えて、トークンの開始と終了それぞれの列と行を示します。

図 119. トークン・レコードの宣言
Dcl
  1 Xin_Tok     Based( null() ),   /* token record                  */
                                   /*                               */
    2 Xin_Tok_Hdr                  /* standard header               */
           like Xin_Hdr,           /*                               */
                                   /*                               */
    2 Xin_Tok_Inx                  /* adata index for token         */
           fixed bin(32) unsigned, /*                               */
                                   /*                               */
    2 Xin_Tok_Begin_Line           /* starting line no within file  */
           fixed bin(32) unsigned, /*                               */
                                   /*                               */
    2 Xin_Tok_End_Line_Offset      /* offset of end line from first */
           fixed bin(16) unsigned, /*                               */
                                   /*                               */
    2 Xin_Tok_Kind_Value           /* token kind                    */
           ordinal xin_Tok_Kind,   /*                               */
                                   /*                               */
    2 Xin_Tok_Rsrvd                /* reserved                      */
           fixed bin(8) unsigned,  /*                               */
                                   /*                               */
    2 Xin_Tok_Begin_Col            /* starting column               */
           fixed bin(16) unsigned, /*                               */
                                   /*                               */
    2 Xin_Tok_End_Col              /* ending column                 */
           fixed bin(16) unsigned; /*                               */

序数 xin_Tok_Kind は、トークン・レコードのタイプを示します。

図 120. トークン・レコードの種類の宣言

 Define
  ordinal
    xin_Tok_Kind
      (  xin_Tok_Kind_Unset
        ,xin_Tok_Kind_Lexeme
        ,xin_Tok_Kind_Comment
        ,xin_Tok_Kind_Literal
        ,xin_Tok_Kind_Identifier
        ,xin_Tok_Kind_Keyword
                                   )  prec(8) unsigned;

Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)