亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sor.c

?? SRI international 發布的OAA框架軟件
?? C
?? 第 1 頁 / 共 4 頁
字號:
/*
 * A n t l r  T r a n s l a t i o n  H e a d e r
 *
 * Terence Parr, Will Cohen, and Hank Dietz: 1989-2001
 * Purdue University Electrical Engineering
 * With AHPCRC, University of Minnesota
 * ANTLR Version 1.33MR33
 *
 *   ..\bin\antlr -gh -k 2 -gt sor.g
 *
 */

#define ANTLR_VERSION	13333
#include "pcctscfg.h"
#include "pccts_stdio.h"

/*  23-Sep-97   thm     Accomodate user who needs to redefine ZZLEXBUFSIZE  */

#ifndef ZZLEXBUFSIZE
#define ZZLEXBUFSIZE	8000
#endif
#include "pcctscfg.h"    /* MR20 G. Hobbelt __USE_PROTOS #define */
#include "charbuf.h"
#include "hash.h"
#include "set.h"
#include "sor.h"
#define AST_FIELDS	\
int token; char text[MaxAtom+1], label[MaxRuleName+1]; \
char *action;		/* if action node, here is ptr to it */ \
char in,out; \
char init_action;	/* set if Action and 1st action of alt */ \
int file; int line; /* set for BLOCK, ALT, nonterm nodes */ \
int upper_range;	/* only if T1..T2 found */	\
GLA *start_state;	/* ptr into GLA for this block */ \
int no_copy;		/* copy input ptr to output ptr? */ \
ListNode *refvars;	/* any ref vars defined for this rule */ \
unsigned char is_root; /* this token is a root #( A ... ) */
#define zzcr_ast(node, cur, _tok, _text)	\
{(node)->token=_tok; strncpy((node)->text, _text,MaxAtom);}
#define USER_ZZSYN
#define zzAST_DOUBLE
extern int define_num;
#define LL_K 2
#define GENAST

#include "ast.h"

#define zzSET_SIZE 16
#include "antlr.h"
#include "tokens.h"
#include "dlgdef.h"
#include "mode.h"

/* MR23 In order to remove calls to PURIFY use the antlr -nopurify option */

#ifndef PCCTS_PURIFY
#define PCCTS_PURIFY(r,s) memset((char *) &(r),'\0',(s));
#endif

#include "ast.c"
zzASTgvars

ANTLR_INFO

/* MR20 G. Hobbelt Fix for Borland C++ 4.x & 5.x compiling with ALL warnings enabled */
#if defined(__TURBOC__)
#pragma warn -aus  /* unused assignment of 'xxx' */
#endif


#include "sym.h"
#include "proto.h"

void    /* MR9 23-Sep-97 Eliminate complaint about no return value */
#ifdef __USE_PROTOS
lisp( AST *tree, FILE *output )
#else
lisp( tree, output )
AST *tree;
FILE *output;
#endif
{
  while ( tree != NULL )
  {
    if ( tree->down != NULL ) fprintf(output," (");
    if ( tree->text[0]!='\0' ) {
      fprintf(output, " \"");
      if ( tree->label[0]!='\0' ) fprintf(output, "%s:", tree->label);
      switch ( tree->token ) {
        case OPT :
        case POS_CLOSURE :
        case CLOSURE :
        case PRED_OP :
        fprintf(output, "%s", tree->text);
        break;
        default :
        fprintf(output, "%s[%s]", zztokens[tree->token], tree->text);
      }
      fprintf(output, "\"");
    }
    else {
      fprintf(output, " %s", zztokens[tree->token]);
    }
    lisp(tree->down, output);
    if ( tree->down != NULL ) fprintf(output," )");
    tree = tree->right;
  }
}

AST *
#ifdef __USE_PROTOS
zzmk_ast(AST *node, int token)
#else
zzmk_ast(node, token)
AST *node;
int token;
#endif
{
  node->token = token;
  return node;
}

AST *
#ifdef __USE_PROTOS
read_sor_desc(FILE *f)
#else
read_sor_desc(f)
FILE *f;
#endif
{
  AST *root = NULL;
  
	zzline = 1;
  ANTLR(sordesc(&root), f);
  
	if ( found_error ) return NULL;
  
	if ( print_guts ) {
    fprintf(stderr, "Internal Represenation of Tree Grammar:\n");
    lisp(root, stderr);
    fprintf(stderr, "\n");
  }
  
	last_valid_token = token_type;
  end_of_input = token_type++;/* end of input token type is 1 + last real token */
  epsilon = token_type++;		/* epsilon token type is 2 + last real token */
  wild_card = token_type++;	/* wild_card_token is 3 + last real token */
  token_association(end_of_input, "$");
  token_association(epsilon, "[Ep]");
  token_association(wild_card, ".");
  
	zzdouble_link(root, NULL, NULL);
  rules = root;
  if ( root!=NULL ) build_GLA(root);
  
	if ( print_guts ) {
    fprintf(stderr, "Internal Represenation of Grammar Lookahead Automaton:\n");
    dump_GLAs(root);
    fprintf(stderr, "\n");
  }
  return root;
}

void
#ifdef __USE_PROTOS
sordesc(AST**_root)
#else
sordesc(_root)
AST **_root;
#endif
{
  zzRULE;
  zzBLOCK(zztasp1);
  zzMake0;
  {
  int he=0,to=0;
  {
    zzBLOCK(zztasp2);
    zzMake0;
    {
    for (;;) {
      if ( !((setwd1[LA(1)]&0x1))) break;
      if ( (LA(1)==Header) ) {
        header(zzSTR); zzlink(_root, &_sibling, &_tail);
        he++;
      }
      else {
        if ( (LA(1)==Tokdef) ) {
          tokdef(zzSTR); zzlink(_root, &_sibling, &_tail);
          to++;
        }
        else break; /* MR6 code for exiting loop "for sure" */
      }
      zzLOOP(zztasp2);
    }
    zzEXIT(zztasp2);
    }
  }
  
  if ( he==0 && !Inline && !GenCPP ) warnNoFL("missing #header statement");
  if ( he>1 ) warnNoFL("extra #header statement");
  if ( to>1 ) warnNoFL("extra #tokdef statement");
  {
    zzBLOCK(zztasp2);
    zzMake0;
    {
    while ( (LA(1)==Action) && (setwd1[LA(2)]&0x2) ) {
      zzmatch(Action); 
      list_add(&before_actions, actiondup(LATEXT(1)));
 zzCONSUME;

      zzLOOP(zztasp2);
    }
    zzEXIT(zztasp2);
    }
  }
  {
    zzBLOCK(zztasp2);
    zzMake0;
    {
    if ( (LA(1)==81)
 ) {
      class_def(zzSTR); zzlink(_root, &_sibling, &_tail);
    }
    else {
      if ( (setwd1[LA(1)]&0x4) ) {
      }
      else {zzFAIL(1,zzerr1,&zzMissSet,&zzMissText,&zzBadTok,&zzBadText,&zzErrk); goto fail;}
    }
    zzEXIT(zztasp2);
    }
  }
  {
    zzBLOCK(zztasp2);
    zzMake0;
    {
    while ( (LA(1)==Action) && (setwd1[LA(2)]&0x8) ) {
      zzmatch(Action); 
      
      if ( CurClassName[0]!='\0' )
      list_add(&class_actions, actiondup(LATEXT(1)));
      else
      list_add(&before_actions, actiondup(LATEXT(1)));
 zzCONSUME;

      zzLOOP(zztasp2);
    }
    zzEXIT(zztasp2);
    }
  }
  {
    zzBLOCK(zztasp2);
    zzMake0;
    {
    while ( (LA(1)==NonTerm) ) {
      rule(zzSTR); zzlink(_root, &_sibling, &_tail);
      zzLOOP(zztasp2);
    }
    zzEXIT(zztasp2);
    }
  }
  {
    zzBLOCK(zztasp2);
    zzMake0;
    {
    while ( (LA(1)==Action) && (setwd1[LA(2)]&0x10) ) {
      zzmatch(Action); 
      
      if ( CurClassName[0]!='\0' )
      list_add(&class_actions, actiondup(LATEXT(1)));
      else
      list_add(&before_actions, actiondup(LATEXT(1)));
 zzCONSUME;

      zzLOOP(zztasp2);
    }
    zzEXIT(zztasp2);
    }
  }
  {
    zzBLOCK(zztasp2);
    zzMake0;
    {
    if ( (LA(1)==80)
 ) {
      zzmatch(80); 
      
      if ( CurClassName[0]=='\0' )
      err("missing class definition for trailing '}'");
 zzCONSUME;

    }
    else {
      if ( (setwd1[LA(1)]&0x20) ) {
      }
      else {zzFAIL(1,zzerr2,&zzMissSet,&zzMissText,&zzBadTok,&zzBadText,&zzErrk); goto fail;}
    }
    zzEXIT(zztasp2);
    }
  }
  {
    zzBLOCK(zztasp2);
    zzMake0;
    {
    while ( (LA(1)==Action) ) {
      zzmatch(Action); 
      list_add(&after_actions, actiondup(LATEXT(1)));
 zzCONSUME;

      zzLOOP(zztasp2);
    }
    zzEXIT(zztasp2);
    }
  }
  zzmatch(Eof);  zzCONSUME;
  zzEXIT(zztasp1);
  return;
fail:
  zzEXIT(zztasp1);
  found_error=1;  
  zzsyn(zzMissText, zzBadTok, (ANTLRChar *)"", zzMissSet, zzMissTok, zzErrk, zzBadText);
  zzresynch(setwd1, 0x40);
  }
}

void
#ifdef __USE_PROTOS
header(AST**_root)
#else
header(_root)
AST **_root;
#endif
{
  zzRULE;
  zzBLOCK(zztasp1);
  zzMake0;
  {
  zzmatch(Header);  zzCONSUME;
  zzmatch(Action); 
  header_action = actiondup(LATEXT(1));
 zzCONSUME;

  zzEXIT(zztasp1);
  return;
fail:
  zzEXIT(zztasp1);
  found_error=1;  
  zzsyn(zzMissText, zzBadTok, (ANTLRChar *)"", zzMissSet, zzMissTok, zzErrk, zzBadText);
  zzresynch(setwd1, 0x80);
  }
}

void
#ifdef __USE_PROTOS
tokdef(AST**_root)
#else
tokdef(_root)
AST **_root;
#endif
{
  zzRULE;
  zzBLOCK(zztasp1);
  zzMake0;
  {
  zzmatch(Tokdef);  zzCONSUME;
  zzmatch(RExpr); 
  {
    AST *dumb = NULL;
    zzantlr_state st; FILE *f; struct zzdlg_state dst;
    strcpy(tokdefs_file, LATEXT(1));
    strcpy(tokdefs_file, tokdefs_file+1); /* remove quotes */
    tokdefs_file[strlen(tokdefs_file)-1] = '\0';
    zzsave_antlr_state(&st);
    zzsave_dlg_state(&dst);
    define_num=0;
    f = fopen(tokdefs_file, "r");
    if ( f==NULL ) {found_error=1; err(eMsg1("cannot open token defs file '%s'", tokdefs_file));}
    else {ANTLRm(enum_file(&dumb), f, PARSE_ENUM_FILE);}
    zzrestore_antlr_state(&st);
    zzrestore_dlg_state(&dst);
    UserDefdTokens = 1;
  }
 zzCONSUME;

  zzEXIT(zztasp1);
  return;
fail:
  zzEXIT(zztasp1);
  found_error=1;  
  zzsyn(zzMissText, zzBadTok, (ANTLRChar *)"", zzMissSet, zzMissTok, zzErrk, zzBadText);
  zzresynch(setwd2, 0x1);
  }
}

void
#ifdef __USE_PROTOS
class_def(AST**_root)
#else
class_def(_root)
AST **_root;
#endif
{
  zzRULE;
  zzBLOCK(zztasp1);
  zzMake0;
  {
  zzmatch(81); zzastDPush; zzCONSUME;
  {
    zzBLOCK(zztasp2);
    zzMake0;
    {
    if ( (LA(1)==NonTerm) ) {
      zzmatch(NonTerm); zzastDPush;
      strncpy(CurClassName,LATEXT(1),MaxAtom);
 zzCONSUME;

    }
    else {
      if ( (LA(1)==Token) ) {
        zzmatch(Token); zzastDPush;
        strncpy(CurClassName,LATEXT(1),MaxAtom);
 zzCONSUME;

      }
      else {zzFAIL(1,zzerr3,&zzMissSet,&zzMissText,&zzBadTok,&zzBadText,&zzErrk); goto fail;}
    }
    zzEXIT(zztasp2);
    }
  }
  if ( !GenCPP ) { err("class meta-op used without C++ option"); }
  zzmatch(OPT); zzastDPush; zzCONSUME;
  zzEXIT(zztasp1);
  return;
fail:
  zzEXIT(zztasp1);
  zzsyn(zzMissText, zzBadTok, (ANTLRChar *)"", zzMissSet, zzMissTok, zzErrk, zzBadText);
  zzresynch(setwd2, 0x2);
  }
}

void
#ifdef __USE_PROTOS
rule(AST**_root)
#else
rule(_root)
AST **_root;
#endif
{
  zzRULE;
  zzBLOCK(zztasp1);
  zzMake0;
  {
  SymEntry *p; int trouble=0, no_copy=0;
  zzmatch(NonTerm); zzsubroot(_root, &_sibling, &_tail);
  
  (*_root)->file = CurFile;
  (*_root)->line = zzline;
  CurRule = zzaArg(zztasp1,1 ).text;
  p = (SymEntry *) hash_get(symbols, zzaArg(zztasp1,1 ).text);
  if ( p==NULL ) {
    p = (SymEntry *) hash_add(symbols, zzaArg(zztasp1,1 ).text, (Entry *) newSymEntry(zzaArg(zztasp1,1 ).text));
    p->token = NonTerm;
    p->defined = 1;
    p->definition = (*_root);
  }
  else if ( p->token != NonTerm ) {
    err(eMsg2("rule definition clashes with %s definition: '%s'", zztokens[p->token], p->str));
    trouble = 1;
  }
  else {
    if ( p->defined ) {
      trouble = 1;
      err(eMsg1("rule multiply defined: '%s'", zzaArg(zztasp1,1 ).text));
    }
    else {
      p->defined = 1;
      p->definition = (*_root);
    }
  }
 zzCONSUME;

  {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人黄色片在线观看| 婷婷开心激情综合| 精品国产乱码久久久久久久久| 在线视频综合导航| 欧美色图12p| 欧美日韩一区国产| 91精品欧美一区二区三区综合在| 欧美视频你懂的| 91精品国产综合久久久蜜臀图片| 3751色影院一区二区三区| 欧美二区三区91| 欧美成人精品1314www| 久久综合九色综合欧美亚洲| 久久蜜桃一区二区| 亚洲欧洲色图综合| 亚洲一区在线观看免费| 日本成人在线电影网| 激情国产一区二区 | 99麻豆久久久国产精品免费优播| 国产精品456| 99久精品国产| 欧美精品亚洲一区二区在线播放| 在线播放91灌醉迷j高跟美女| 精品日韩99亚洲| 国产欧美精品一区二区色综合 | 日韩精品乱码av一区二区| 久久99在线观看| 99国产精品久久久| 欧美日韩一区二区在线观看视频| 日韩三级中文字幕| 亚洲欧洲日韩一区二区三区| 欧美a级理论片| 国产精品99久久久久久有的能看| 一本到一区二区三区| 欧美一区二区三区在线电影| 中文欧美字幕免费| 首页国产欧美日韩丝袜| 成人免费黄色在线| 欧美一级国产精品| 最近中文字幕一区二区三区| 日韩1区2区3区| 99久久99久久免费精品蜜臀| 欧美视频一二三区| 国产欧美一区二区三区在线看蜜臀| 一区二区高清免费观看影视大全 | 国产成人aaa| 欧美理论在线播放| 国产精品乱码一区二区三区软件| 视频一区视频二区在线观看| a在线欧美一区| 久久亚洲春色中文字幕久久久| 亚洲六月丁香色婷婷综合久久 | 欧美日韩精品专区| 亚洲欧洲三级电影| 国产伦精一区二区三区| 欧美一区二区女人| 亚洲高清中文字幕| 成a人片国产精品| 精品精品欲导航| 亚洲第一主播视频| 色94色欧美sute亚洲线路一久| 久久精品一区二区三区四区| 裸体在线国模精品偷拍| 欧美人与禽zozo性伦| 国产精品人人做人人爽人人添| 精品中文字幕一区二区小辣椒| 91精品中文字幕一区二区三区 | 欧美精品亚洲二区| 一区二区国产盗摄色噜噜| 99久久精品费精品国产一区二区 | 色综合久久综合| 最新不卡av在线| 色素色在线综合| 亚洲欧美偷拍另类a∨色屁股| 99久久精品情趣| 亚洲三级久久久| 日本福利一区二区| 亚洲一区二区视频在线观看| 欧美视频在线一区| 日韩av不卡在线观看| 日韩三级视频中文字幕| 狠狠色丁香婷婷综合| 国产三级精品在线| 大尺度一区二区| 亚洲三级电影网站| 欧美色涩在线第一页| 日韩影视精彩在线| 日韩欧美国产不卡| 国产成人av资源| 亚洲欧美偷拍另类a∨色屁股| 欧美在线一二三四区| 亚洲第一久久影院| 日韩欧美国产电影| 国产91精品一区二区麻豆网站| 亚洲国产经典视频| 91精品办公室少妇高潮对白| 亚洲成人av免费| 欧美videos中文字幕| 风间由美中文字幕在线看视频国产欧美| 国产精品久久久久精k8| 欧美另类一区二区三区| 国内成人精品2018免费看| 亚洲欧洲三级电影| 欧美一级夜夜爽| 成人av电影在线播放| 亚洲一二三区在线观看| 精品免费一区二区三区| 99久久国产综合精品色伊| 首页国产丝袜综合| 中文在线免费一区三区高中清不卡| 色狠狠色噜噜噜综合网| 久久99国产精品久久99果冻传媒| 亚洲国产经典视频| 777色狠狠一区二区三区| 国产白丝网站精品污在线入口 | 欧美va亚洲va国产综合| 成人高清视频在线观看| 蜜臀av一级做a爰片久久| 1024成人网| 久久久精品人体av艺术| 欧美日韩一区二区三区视频| 国产成人综合精品三级| 午夜av电影一区| 亚洲同性同志一二三专区| 欧美xxxxxxxx| 91精品国产综合久久久蜜臀粉嫩| 91丨九色丨尤物| 国产永久精品大片wwwapp| 亚洲大尺度视频在线观看| 国产精品久久久久久久久晋中| 日韩精品一区二区三区视频播放| av爱爱亚洲一区| 国产精品一区免费视频| 日韩高清电影一区| 亚洲成人av资源| 亚洲私人黄色宅男| 久久久久久久久蜜桃| 日韩视频一区二区三区在线播放 | 日本一区二区免费在线观看视频| 91精品国产欧美一区二区| 色婷婷av久久久久久久| 成人激情黄色小说| 国产精品一区二区免费不卡| 麻豆中文一区二区| 亚洲国产美女搞黄色| 亚洲美女偷拍久久| 国产精品视频观看| 中文字幕人成不卡一区| 国产精品麻豆一区二区| 中文字幕在线观看一区| 国产精品理论片在线观看| 国产日韩三级在线| 国产精品麻豆欧美日韩ww| 国产欧美一区二区三区在线看蜜臀| 国产日韩欧美亚洲| 精品国产伦理网| 国产欧美日韩在线视频| 国产日韩精品视频一区| 国产精品丝袜91| 日韩毛片高清在线播放| 亚洲美女淫视频| 爽爽淫人综合网网站| 蜜臀久久99精品久久久久久9| 蜜桃精品在线观看| 精品亚洲国产成人av制服丝袜| 国产精品自在在线| 波多野结衣欧美| 欧美影院精品一区| 91精品国产一区二区三区| 欧美zozozo| 国产精品不卡一区二区三区| 中文字幕中文在线不卡住| 亚洲一线二线三线视频| 日本不卡的三区四区五区| 国产一区久久久| 97国产一区二区| 91精品国产综合久久精品app| 久久蜜桃av一区精品变态类天堂| 亚洲国产精品ⅴa在线观看| 亚洲国产综合人成综合网站| 久久国产三级精品| 成人涩涩免费视频| 欧美日韩在线播放三区四区| 日韩欧美一区二区视频| 国产欧美一区二区精品仙草咪| 夜色激情一区二区| 精品中文字幕一区二区小辣椒| 99re热这里只有精品视频| 在线不卡的av| 国产精品理论片| 欧美aaaaaa午夜精品| 波多野洁衣一区| 日韩欧美国产成人一区二区| 亚洲情趣在线观看| 国产一区二区三区不卡在线观看 | 国产白丝精品91爽爽久久| 欧美日韩一区在线| 国产欧美日韩激情| 免费的成人av| 色久优优欧美色久优优|