package EDU.neu.ccs.demeter.tools.apstudio.graphedit;
import java.awt.*;
import java.io.*;
import java.util.*;
import EDU.neu.ccs.demeter.*;
import EDU.neu.ccs.demeter.common.tg.*;


import EDU.neu.ccs.demeter.*;
class SGEdgeMatcher extends GlobVisitor {
  protected ClassNameI c;
  public ClassNameI get_c() { return c; }
  public void set_c(ClassNameI new_c)
    { c = new_c; }
  protected int index;
  public int get_index() { return index; }
  public void set_index(int new_index)
    { index = new_index; }
  protected Vector return_val;
  public Vector get_return_val() { return return_val; }
  public void set_return_val(Vector new_return_val)
    { return_val = new_return_val; }
  public SGEdgeMatcher(ClassNameI c, int index, Vector return_val) {
    super();
    set_c(c);
    set_index(index);
    set_return_val(return_val);
  }
  public SGEdgeMatcher() { return_val = new Vector(); }
  public void before(ClassGlobSpec host) {
    if (host.match((ClassName) c)) return_val.addElement(new Integer(index));
    index++;
  }
  void universal_trv0_bef(UniversalVisitor _v_) {
    super.universal_trv0_bef(_v_);
  }
  void universal_trv0_aft(UniversalVisitor _v_) {
    super.universal_trv0_aft(_v_);
  }
  void universal_trv0(UniversalVisitor _v_) {
    universal_trv0_bef(_v_);
    super.universal_trv0(_v_);
    universal_trv0_aft(_v_);
  }
}

