/*   Generated by AspectJ version 0.7beta7 */
public class __Subtraversal extends edu.neu.ccs.demeter.AroundContinuation  {  //from __Subtraversal.java:2
  public __Subtraversal()  {                                //from __Subtraversal.java:3
    super();                                                //from __Subtraversal.java:4
    ;                                                       //from __Subtraversal.java:4
  }

  java.lang.reflect.Method method;                          //from __Subtraversal.java:6
  java.lang.Object object;                                  //from __Subtraversal.java:7
  java.lang.Object[] args;                                  //from __Subtraversal.java:8
  __Subtraversal(java.lang.reflect.Method m, java.lang.Object o, java.lang.Object[] a)  {  //from __Subtraversal.java:10
    method = m;                                             //from __Subtraversal.java:10
    object = o;                                             //from __Subtraversal.java:10
    args = a;                                               //from __Subtraversal.java:10
  }

  public void apply()  {                                    //from __Subtraversal.java:11
    try  {                                                  //from __Subtraversal.java:12
      method.invoke(object, args);                          //from __Subtraversal.java:13
    }
    catch (java.lang.IllegalAccessException e)  {           //from __Subtraversal.java:14
      throw new java.lang.RuntimeException("Internal error: " + e);  //from __Subtraversal.java:15
    }
    catch (java.lang.IllegalArgumentException e)  {         //from __Subtraversal.java:16
      throw new java.lang.RuntimeException("Internal error: " + e);  //from __Subtraversal.java:17
    }
    catch (java.lang.reflect.InvocationTargetException e)  {  //from __Subtraversal.java:18
      java.lang.Throwable t = e.getTargetException();       //from __Subtraversal.java:19
      java.io.StringWriter w = new java.io.StringWriter();  //from __Subtraversal.java:20
      t.printStackTrace(new java.io.PrintWriter(w));        //from __Subtraversal.java:21
      throw new java.lang.RuntimeException("__Subtraversal got exception:" + "\n" + t + "\n" + w);  //from __Subtraversal.java:23
    }
  }

}