@Override
  public void subtreeChanged() {
    FileElement tree = getTreeElement();
    if (tree != null) {
      tree.clearCaches();
    }

    synchronized (myPsiLock) {
      if (myTrees.useSpineRefs()) {
        LOG.error("Somebody has requested stubbed spine during PSI operations; not only is this expensive, but will also cause stub PSI invalidation");
      }
      updateTrees(myTrees.clearStub("subtreeChanged"));
    }
    clearCaches();
    getViewProvider().rootChanged(this);
  }
@Override
  public void subtreeChanged()