symtable.java

来自「一个C语言子集的编译器」· Java 代码 · 共 69 行

JAVA
69
字号
/*
 * @(#)SymTable.java	1.0.0  05/13/2007
 *
 * Copyright 2007 Xuxt@buaa, No.34060520 All rights reserved.
 */
package com.king4solomon.homework.compiler.core;

import javax.swing.*;

import com.king4solomon.homework.compiler.gui.TablePane;

@SuppressWarnings("serial")
public class SymTable extends JTable {

	public SymTable() {
		super(mode);
	}

	public static int addRow(SymTableItem item) {
		mode.addRow(item);
		TablePane.table.updateUI();
		return mode.getRCount() - 1;
	}

	public static void removeRow() {
		mode.removeRow();
		TablePane.table.updateUI();
	}

	public static int whereIs(String name) {
		return 0;
	}

	public static void clear() {
		mode.setRowCount(0);
		mode.setRCount(0);
	}

	public static void quit() {
		mode.quit();
	}

	public static int search(String nm, int lv) {
		return mode.search(nm, lv);
	}

	public static int searchFunc(String nm) {
		return mode.searchFunc(nm);
	}

	public static int levOut(int lv) {
		return mode.levBreak(lv);
	}

	public static void setValue(Object var, int row, int column) {
		mode.setValueAt(var, row, column);
	}

	public static ItemInfo getEleInfo() {
		return mode.getEleInfo();
	}

	public static ItemInfo getFuncInfo() {
		return mode.getFuncInfo();
	}

	private static SymTableMode mode = new SymTableMode();
}

⌨️ 快捷键说明

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