当前位置:  软件>java软件

CUP 解析器生成器 JavaCUP

    来源:    发布时间:2014-12-26

    本文导语:  JavaCUP 是 Java 语言实现的 CUP 解析器生成器。 示例代码: // Simple Example Scanner Class // scanner.java import java_cup.runtime.*; import java.io.*; //import sym; public class scanner implements java_cup.runtime.Scanner { /* single lookahead character */ protected static i...

JavaCUP 是 Java 语言实现的 CUP 解析器生成器。

示例代码:

// Simple Example Scanner Class 
// scanner.java
import java_cup.runtime.*;
import java.io.*;
//import sym;

public class scanner implements java_cup.runtime.Scanner {
  /* single lookahead character */
  protected static int next_char;
  // since cup v11 we use SymbolFactories rather than Symbols
  private SymbolFactory sf = new DefaultSymbolFactory();
  private static FileReader fileReader;
  public scanner(FileReader fr){
      this.fileReader=fr;
  }
  /* advance input by one character */
  protected static void  advance()
    throws java.io.IOException
    { next_char = fileReader.read(); }

  /* initialize the scanner */
  public static void init()
    throws java.io.IOException
    { advance(); }

  /* recognize and return the next complete token */
  public Symbol next_token()
    throws java.io.IOException
    {
      for (;;)
        switch (next_char)
      {
        case '0': case '1': case '2': case '3': case '4': 
        case '5': case '6': case '7': case '8': case '9': 
          /* parse a decimal integer */
          int i_val = 0;
          do {
            i_val = i_val * 10 + (next_char - '0');
            advance();
          } while (next_char >= '0' && next_char 

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • World cup celebration!
  • 怎样看CUP正被哪个程序在调用?
  • CUP
  • 一个进程中的多个线程不会被调度到一台机器中的多个cup并行执行吗?
  • 怎么监测服务器的cup使用情况,有着方面的函数调用么?谢谢大家
  • 散份喽~~。可用分都过万了。有个兄弟问UNIX支持多少CUP。两年前IBM的RS/6000SP是2048个CPU的阵列。记得哪个挑战棋王的深蓝吗?只是他的一
  • MRTG监控Linux cup使用率、内存使用率、硬盘状况出问题


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3