public void writeTable(Map table, boolean reversed) {
		if (!isReachable() && (Main.stripping & Main.STRIP_UNREACH) != 0)
			return;

		if (getAlias().length() != 0) {
			String name = getName();
			Identifier outer = getParent();
			while (outer != null && outer.getAlias().length() == 0) {
				if (outer.getName().length() > 0)
					name = outer.getName() + "." + name;
				outer = outer.getParent();
			}
			if (reversed)
				table.put(getFullAlias(), name);
			else
				table.put(getFullName(), getAlias());
		}

		for (Iterator i = getChilds(); i.hasNext();)
			((Identifier) i.next()).writeTable(table, reversed);
	}