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

📄 dtcodetype.java

📁 Java写的词法/语法分析器。可生成JAVA语言或者是C++的词法和语法分析器。并可产生语法分析树和对该树进行遍历
💻 JAVA
字号:
package tinybasic;import java.util.Stack;import java.util.Vector;import antlr.collections.AST;public class DTCodeType {    protected Stack callDepthStack;    class SaveEnv{	protected Scope scope;	protected Vector args;		SaveEnv(Scope scope,Vector args){	    this.scope=scope;	    this.args=args;	}		Scope getScope(){return scope;}	Vector getArgs() { return args;}    }	        protected AST entry,cb;    protected Context theContext;    protected Scope scope;    protected Vector args;        String name;        class CodeContext {	protected Context context;	protected Scope scope;	protected Vector args;	CodeContext (Context context,Scope scope,Vector args){	    this.context=context;	    this.scope=scope;	    this.args=args;	}    }        public DTCodeType(AST entry,AST cb,Scope scope,Vector args,String name){	this.entry	=	entry	;	this.cb		=	cb	;	this.scope	=	scope;	this.args	=	args	;	this.name	=	name	;		callDepthStack=new Stack();    }    public void newCall(Context context){	CodeContext codeContext=new CodeContext(context,scope,args);	callDepthStack.push(codeContext);	context.pushScope(scope);    }        public void attachArg(int argnum,DTDataType arg){	DTDataType proxy=(DTDataType)args.elementAt(argnum);	proxy.attach(arg);    }        public AST getAST(){	return this.entry;    }}

⌨️ 快捷键说明

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