Package java.lang.invoke

Examples of java.lang.invoke.MethodHandle.invoke()


    MethodHandle invoker = plopper.dynamicInvoker();

    invoker.invoke(a, 1);
    assertThat(a.get("plop"), is((Object) 1));

    invoker.invoke(b, 1);
    assertThat(b.get("plop"), is((Object) 1));

    invoker.invoke(a, 10);
    assertThat(a.get("plop"), is((Object) 10));
    assertThat(b.get("plop"), is((Object) 1));
View Full Code Here


    assertThat(a.get("plop"), is((Object) 1));

    invoker.invoke(b, 1);
    assertThat(b.get("plop"), is((Object) 1));

    invoker.invoke(a, 10);
    assertThat(a.get("plop"), is((Object) 10));
    assertThat(b.get("plop"), is((Object) 1));

    assertThat(invoker.invoke(new Ploper(), 666), is((Object) "666"));
View Full Code Here

    invoker.invoke(a, 10);
    assertThat(a.get("plop"), is((Object) 10));
    assertThat(b.get("plop"), is((Object) 1));

    assertThat(invoker.invoke(new Ploper(), 666), is((Object) "666"));

    b.undefine("plop");
    Object result = invoker.invoke(b, 1);
    assertThat(result, is((Object) b));
    assertThat(b.get("plop"), is((Object) 1));
View Full Code Here

    assertThat(b.get("plop"), is((Object) 1));

    assertThat(invoker.invoke(new Ploper(), 666), is((Object) "666"));

    b.undefine("plop");
    Object result = invoker.invoke(b, 1);
    assertThat(result, is((Object) b));
    assertThat(b.get("plop"), is((Object) 1));
  }
}
View Full Code Here

      return !(receiver == other) && !other.equals(receiver);
    }

    public static Object decorateToString(Object superTarget, Object receiver) throws Throwable {
      MethodHandle super_mh = (MethodHandle) superTarget;
      return "{{" + super_mh.invoke(receiver) + "}}";
    }

    public static Object decorateVarargs(Object superTarget, Object receiver,Object ... args) throws Throwable {
      MethodHandle super_mh = (MethodHandle) superTarget;
      return "{{" + super_mh.invoke(receiver,args) + "}}";
View Full Code Here

      return "{{" + super_mh.invoke(receiver) + "}}";
    }

    public static Object decorateVarargs(Object superTarget, Object receiver,Object ... args) throws Throwable {
      MethodHandle super_mh = (MethodHandle) superTarget;
      return "{{" + super_mh.invoke(receiver,args) + "}}";
    }

    public static Object decorateVarargs2(Object superTarget, Object receiver,Object str, Object ... args) throws Throwable {
      MethodHandle super_mh = (MethodHandle) superTarget;
      return "{{" + super_mh.invoke(receiver,str,args) + "}}";
View Full Code Here

      return "{{" + super_mh.invoke(receiver,args) + "}}";
    }

    public static Object decorateVarargs2(Object superTarget, Object receiver,Object str, Object ... args) throws Throwable {
      MethodHandle super_mh = (MethodHandle) superTarget;
      return "{{" + super_mh.invoke(receiver,str,args) + "}}";
    }

    public static Object proxy(Object superTarget, Object name, Object args) throws Throwable {
      MethodHandle super_mh = (MethodHandle) superTarget;
      Object[] aargs = (Object[]) args;
View Full Code Here

      MethodHandle super_mh = (MethodHandle) superTarget;
      Object[] aargs = (Object[]) args;
      String method = (String) name;
      switch (method) {
        case "add":
          return super_mh.invoke(aargs[0], aargs[1] + "!");
        case "toString":
          return "{{" + super_mh.invoke(aargs[0]) + "}}";
        case "varargs":
          return "{{" + super_mh.invoke(aargs[0],(Object[])aargs[1]) + "}}";
        case "varargs2":
View Full Code Here

      String method = (String) name;
      switch (method) {
        case "add":
          return super_mh.invoke(aargs[0], aargs[1] + "!");
        case "toString":
          return "{{" + super_mh.invoke(aargs[0]) + "}}";
        case "varargs":
          return "{{" + super_mh.invoke(aargs[0],(Object[])aargs[1]) + "}}";
        case "varargs2":
          return "{{" + super_mh.invoke(aargs[0],aargs[1],(Object[])aargs[2]) + "}}";
        default:
View Full Code Here

        case "add":
          return super_mh.invoke(aargs[0], aargs[1] + "!");
        case "toString":
          return "{{" + super_mh.invoke(aargs[0]) + "}}";
        case "varargs":
          return "{{" + super_mh.invoke(aargs[0],(Object[])aargs[1]) + "}}";
        case "varargs2":
          return "{{" + super_mh.invoke(aargs[0],aargs[1],(Object[])aargs[2]) + "}}";
        default:
          return super_mh.invokeWithArguments(aargs);
      }
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.