Namespace.register("U.CD");
// 主函数
U.CD.Error = 1;//判断程序有无错误
U.CD.run=function () {
cls();
lex();//词法分析 入口
Syntax.run(tokens); //语法分析入口
//my('col5').appendChild(Syntax.treeview(Syntax.root)); 语法树
console(Syntax.error);// 控制台
if (U.CD.Error) {
//coderesult(Interpreter.Output(Syntax.intercode)); //打印中间代码
Interpreter.run(Syntax.intercode); // 制表符 入口
if (U.CD.Error) {
showcol('UD_Print', 'UD_Control');
}
else{
showcol('UD_Control', 'UD_Print');
}
}
else{
showcol('UD_Control', 'UD_Print');
}
}
// 打印控制台
function console(str) {
if(str!="")
U.CD.Error = 0;
U.CD.Obj('UD_CD_Col6').innerHTML += "
"+str+"
";
};
// 打印词法分析结果
//function lexresult(str) {
// my('col3').innerHTML += str;
//};
// 打印输出
function outputresult(str) {
U.CD.Obj('UD_CD_Col6').innerHTML += str;
};
// 打印语法树
//function treeresult(str) {
// my('col5').innerHTML += str;
//};
// 打印中间代码
function coderesult(str) {
U.CD.Obj('UD_CD_Col6').innerHTML += str;
};
// 清屏函数
function cls() {
U.CD.Obj('UD_CD_Col6').innerHTML = '';
U.CD.Error = 1
};
// 清空源代码区
function clsource() {
U.CD.Obj('UD_CD_Source').value = '';
};
// tab函数
function showcol(n,c) {
U.CD.Obj(c).style.color = '#999999';
U.CD.Obj(c).style.background = '#E1E1E1';
U.CD.Obj(n).style.color = 'white';
U.CD.Obj(n).style.background = '#038BC7';
};
//// 弹出层
//function dialog() {
// with (document.documentElement) {
// var width = (scrollWidth > clientWidth) ? scrollWidth : clientWidth;
// var height = (scrollHeight > clientHeight) ? scrollHeight
// : clientHeight;
// }
// var left = document.documentElement.clientWidth / 2 - 186;
// var top = document.documentElement.clientHeight / 2 - 169;
// document.getElementsByTagName('body')[0].innerHTML += ""
// + '
JCompiler-JavaScript 解释器
邱旭乐(200732580229)
张河川(200732580241)
'
// + '
';
// var div = document.createElement('div');
// div.style.backgroundColor = "#333333";
// div.style.width = width + 'px';
// div.style.width = height + 'px';
// div.style.left = "0 px";
// div.style.top = "0 px";
// div.style.zIndex = 98;
// div.style.opacity = 0.6;
// // document.getElementsByTagName('body')[0].innerHTML+=copyright;
// document.getElementsByTagName('body')[0].innerHTML += "";
//};
//// 关闭层
//function destroyDg() {
// my('mask').parentNode.removeChild(my('mask'));
// my('copyright').parentNode.removeChild(my('copyright'));
//};
//function showNode(hotspot) {
// for ( var n = 0; n != hotspot.childNodes.length; n++) {
// var node = hotspot.childNodes[n];
// // li文本不受该动作影响
// if (node.nodeType == 3) {
// continue;
// } else if (node.style.display == 'block' || node.style.display == '') {
// node.style.display = 'none';
// node.parentNode.style.backgroundImage = "url(images/plus.gif)";
// } else {
// node.style.display = 'block';
// node.parentNode.style.backgroundImage = "url(images/minus.gif)";
// }
// }
//};