cr_parse.hpp

来自「自己写的关于编译原理的实验报告的源代码」· HPP 代码 · 共 45 行

HPP
45
字号
//**********************************************************
//   CR_PARSE.HPP
//   Coco/R C++ Support Library.
//   Author: Frankie Arzu <farzu@uvg.edu.gt>
//
//   Jun 12, 1996  Version 1.06
//      Many fixes and suggestions thanks to
//      Pat Terry <cspt@cs.ru.ac.za>
//**********************************************************

#ifndef CR_PARSER_H
#define CR_PARSER_H

#include "cr_abs.hpp"
#include "cr_error.hpp"

class CRParser {
// Abstract Parser
  public:
    CRParser(AbsScanner *S = NULL, CRError *E = NULL);
    // Constructs abstract parser, and associates it with scanner S and
    // customized error reporter E

    void Parse();
    // Abstract parser

    void SynError(int ErrorNo);
    // Records syntax error ErrorNo

    void SemError(int ErrorNo);
    // Records semantic error ErrorNo

  protected:
    virtual void Get() = 0;
    int  In(unsigned short int *SymbolSet, int i);
    void Expect(int n);
    void GenError(int ErrorNo);
    AbsScanner *Scanner;
    CRError    *Error;
    int        Sym;
};

#endif // CR_PARSER_H

⌨️ 快捷键说明

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