package io.vertx.codegen;

import java.util.HashMap;
import java.util.Map;

Author:Julien Viet
/** * @author <a href="mailto:julien@julienviet.com">Julien Viet</a> */
public enum MethodKind {
A method has an handler kind when it has at least one parameter and its last parameter is a parameterized handler type having a legal type argument that is not an async_result class kind.
/** * A method has an handler kind when it has at least one parameter and its last parameter * is a parameterized handler type having a legal type argument that is not an <i>async_result</i> class * kind. */
HANDLER,
A method has a future kind when it has at least one parameter and its last parameter is a parameterized handler type having a async_result parameterized type argument.
/** * A method has a future kind when it has at least one parameter and its last parameter * is a parameterized handler type having a <i>async_result</i> parameterized type argument. */
FUTURE, OTHER;
Useful for testing the method kind, allows to do method.kind == METHOD_HANDLER instead of method.kind.name() == "HANDLER"
/** * Useful for testing the method kind, allows to do method.kind == METHOD_HANDLER instead of method.kind.name() == "HANDLER" */
public static Map<String, MethodKind> vars() { HashMap<String, MethodKind> vars = new HashMap<>(); for (MethodKind classKind : MethodKind.values()) { vars.put("METHOD_" + classKind.name(), classKind); } return vars; } }