⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 scan.c

📁 SRI international 发布的OAA框架软件
💻 C
📖 第 1 页 / 共 5 页
字号:
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5
};


static void act53()
{ 
		NLA = Eof;
	}


static void act54()
{ 
		NLA = 18;
    zzline++; zzmode(ACTIONS); zzmore();   
	}


static void act55()
{ 
		NLA = 19;
    zzmore();   
	}

static unsigned char shift5[257] = {
  0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 1, 3, 3, 2, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3
};


static void act56()
{ 
		NLA = Eof;
	}


static void act57()
{ 
		NLA = 20;
    zzline++; zzmode(START); zzskip();   
	}


static void act58()
{ 
		NLA = 21;
    zzskip();   
	}

static unsigned char shift6[257] = {
  0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 1, 3, 3, 2, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
  3, 3, 3, 3, 3, 3, 3
};


static void act59()
{ 
		NLA = Eof;
	}


static void act60()
{ 
		NLA = 22;
    zzmode(START); zzskip();   
	}


static void act61()
{ 
		NLA = 23;
    zzskip();   
	}


static void act62()
{ 
		NLA = 24;
    zzline++; zzskip();   
	}


static void act63()
{ 
		NLA = 25;
    zzskip();   
	}

static unsigned char shift7[257] = {
  0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 3, 5, 5, 4, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 1, 5, 5, 5, 5, 2, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5
};


static void act64()
{ 
		NLA = Eof;
	}


static void act65()
{ 
		NLA = 26;
    {
      RefVarRec *rf;
      zzskip();
      zzbegexpr[strlen(zzbegexpr)-1] = '\0';
      rf=refVarRec(zzbegexpr);
      list_add(&AllRefVars, rf);
      list_add(&RefVars, rf);
      zzmode(ACTIONS); zzmore(); zzreplstr("");
    }  
	}

static unsigned char shift8[257] = {
  0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
  1, 1, 1, 1, 1, 1, 1
};


static void act66()
{ 
		NLA = Eof;
	}


static void act67()
{ 
		NLA = Action;
    /* these do not nest */
    zzmode(START);
    NLATEXT[0] = ' ';
    NLATEXT[1] = ' ';
    zzbegexpr[0] = ' ';
    zzbegexpr[1] = ' ';
    if ( zzbufovf ) {
      found_error = 1;
      err( eMsgd("action buffer overflow; size %d",ZZLEXBUFSIZE));
    }
	}


static void act68()
{ 
		NLA = PassAction;
    if ( topint() == ']' ) {
      popint();
      if ( istackempty() )	/* terminate action */
      {
        zzmode(START);
        NLATEXT[0] = ' ';
        zzbegexpr[0] = ' ';
        if ( zzbufovf ) {
          found_error = 1;
          err( eMsgd("parameter buffer overflow; size %d",ZZLEXBUFSIZE));
        }
      }
      else {
        /* terminate #[..] */
        zzreplstr(")");
        zzmore();
      }
    }
    else if ( topint() == '|' ) { /* end of simple [...] */
      popint();
      zzmore();
    }
    else zzmore();
	}


static void act69()
{ 
		NLA = 29;
    zzline++; zzmore();   
	}


static void act70()
{ 
		NLA = 30;
    zzmore();   
	}


static void act71()
{ 
		NLA = 31;
    
    if ( !(strcmp(zzbegexpr, "#ifdef")==0 ||
    strcmp(zzbegexpr, "#else")==0 ||
    strcmp(zzbegexpr, "#endif")==0 ||
    strcmp(zzbegexpr, "#ifndef")==0 ||
    strcmp(zzbegexpr, "#if")==0 ||
    strcmp(zzbegexpr, "#define")==0 ||
    strcmp(zzbegexpr, "#pragma")==0 ||
    strcmp(zzbegexpr, "#undef")==0 ||
    strcmp(zzbegexpr, "#import")==0 ||
    strcmp(zzbegexpr, "#line")==0 ||
    strcmp(zzbegexpr, "#include")==0 ||
    strcmp(zzbegexpr, "#error")==0) )
    {
      static char buf[100];
      if ( !transform ) {
        warn("#id used in nontransform mode; # ignored");
        sprintf(buf, "%s", zzbegexpr+1);
      }
      else {
        if ( CurRule==NULL )
        {warn("#id used in action outside of rule; ignored");}
        else if ( strcmp(zzbegexpr+1,CurRule)==0 )
        strcpy(buf, "(*_result)");
      }
      zzreplstr(buf);
    }
    zzmore();
	}


static void act72()
{ 
		NLA = 32;
    
    if ( GenCPP ) zzreplstr("new SORAST");
    else zzreplstr("ast_empty_node()");
    zzmore();
	}


static void act73()
{ 
		NLA = 33;
    zzreplstr("NULL"); zzmore();   
	}


static void act74()
{ 
		NLA = 34;
    
    pushint(']');
    if ( GenCPP ) zzreplstr("new SORAST(");
    else zzreplstr("ast_node(");
    zzmore();
	}


static void act75()
{ 
		NLA = 35;
    
    pushint('}');
    if ( GenCPP ) zzreplstr("PCCTS_AST::make(");
    else zzreplstr("ast_make(");
    zzmore();
	}


static void act76()
{ 
		NLA = 36;
    zzmore();   
	}


static void act77()
{ 
		NLA = 37;
    
    if ( istackempty() )
    zzmore();
    else if ( topint()==')' ) {
      popint();
    }
    else if ( topint()=='}' ) {
      popint();
      /* terminate #(..) */
      zzreplstr(", NULL)");
    }
    zzmore();
	}


static void act78()
{ 
		NLA = 38;
    
    pushint('|');	/* look for '|' to terminate simple [...] */
    zzmore();
	}


static void act79()
{ 
		NLA = 39;
    
    pushint(')');
    zzmore();
	}


static void act80()
{ 
		NLA = 40;
    zzreplstr("]");  zzmore();   
	}


static void act81()
{ 
		NLA = 41;
    zzreplstr(")");  zzmore();   
	}


static void act82()
{ 
		NLA = 42;
    zzreplstr(">");  zzmore();   
	}


static void act83()
{ 
		NLA = 43;
    zzmode(ACTION_CHARS); zzmore();  
	}


static void act84()
{ 
		NLA = 44;
    zzmode(ACTION_STRINGS); zzmore();  
	}


static void act85()
{ 
		NLA = 45;
    zzreplstr("#");  zzmore();   
	}


static void act86()
{ 
		NLA = 46;
    zzmore();   
	}


static void act87()
{ 
		NLA = 47;
    zzmore();   
	}


static void act88()
{ 
		NLA = 48;
    zzmode(ACTION_COMMENTS); zzmore();   
	}


static void act89()
{ 
		NLA = 49;
    err("Missing /*; found dangling */ in action"); zzmore();   
	}


static void act90()
{ 
		NLA = 50;
    zzmode(ACTION_CPP_COMMENTS); zzmore();   
	}


static void act91()
{ 
		NLA = 51;
    zzmode(REFVAR_SCARF); zzmore(); zzreplstr("");  
	}


static void act92()
{ 
		NLA = 52;
    
    zzmore(); if ( !GenCPP ) zzreplstr("_parser->");
	}


static void act93()
{ 
		NLA = 53;
    
    if ( (GenCPP && strcmp(zzbegexpr,"ast_scan(")==0) ||
    (!GenCPP && strcmp(zzbegexpr,"ast_scan(")==0) ) {
      char *args=scarf_to_end_of_func_call();
      zzreplstr(cvt_token_str(zzbegexpr, args));
      zzmore();
    }
    else { pushint(')'); zzmore(); }
	}


static void act94()
{ 
		NLA = 54;
    zzmore();   
	}


static void act95()
{ 
		NLA = 55;
    zzmore();   
	}

static unsigned char shift9[257] = {
  0, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
  17, 3, 17, 17, 4, 17, 17, 17, 17, 17, 
  17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
  17, 17, 17, 17, 17, 13, 5, 17, 17, 17, 
  12, 9, 10, 15, 17, 17, 17, 17, 14, 7, 
  7, 7, 7, 7, 7, 7, 7, 7, 7, 17, 
  17, 17, 17, 1, 17, 16, 6, 6, 6, 6, 
  6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 
  6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 
  6, 6, 8, 11, 2, 17, 6, 17, 6, 6, 
  6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 
  6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 
  6, 6, 6, 6, 17, 17, 17, 17, 17, 17, 
  17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
  17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
  17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
  17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
  17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
  17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
  17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
  17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
  17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
  17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
  17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
  17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
  17, 17, 17, 17, 17, 17, 17
};


static void act96()
{ 
		NLA = Eof;
	}


static void act97()
{ 
		NLA = 93;
    zzmode(PARSE_ENUM_FILE); zzmore();   
	}


static void act98()
{ 
		NLA = 94;
    zzmore();   
	}


static void act99()
{ 
		NLA = 95;
    zzline++; zzmore();   
	}


static void act100()
{ 
		NLA = 96;
    zzmore();   
	}

static unsigned char shift10[257] = {
  0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 3, 5, 5, 4, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
  5, 5, 5, 1, 5, 5, 5, 5, 2, 5, 
  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -