code: private void createAmpResultMethod(JavaClass jClass,
                                       Method method,
                                       int resultOffset)
    {
      String methodName = method.getName();
      Class<?> []parameterTypes = method.getParameterTypes();
      
      if (parameterTypes.length != 1) {
        throw new IllegalStateException();
      }
  
      addMethod(method);
      
      CodeWriterAttribute code = createMethodHeader(jClass, method);
      
      code.setMaxLocals(1 + 2 * parameterTypes.length);
      code.setMaxStack(10 + 2 * parameterTypes.length);
  
      code.pushObjectVar(getLength(parameterTypes, resultOffset) + 1);
      
      code.pushObjectVar(0);
      code.getField(jClass.getThisClass(),
                    getMethodFieldName(methodName),
                    ShimConverter.class);
       
      code.pushObjectVar(0);
      
      code.invoke(ShimConverter.class,
                  "toTransfer",
                  Object.class,
                  Object.class);
      
      code.invokeInterface(Result.class,
                           "ok",
                           void.class,
                           Object.class);
  
      code.addReturn();
  
      code.close();
    }
docs: void get(Result<DTO> result)