Class Method

All Implemented Interfaces:
Annotatable, Attributeable, Commentable, Node, Renderable

public class Method extends ModifierSupport implements Renderable, Commentable, Annotatable
  • Field Details

  • Constructor Details

  • Method Details

    • newMethod

      public static Method newMethod(String name, TypeRef returnType, boolean varArgPrefered, Property... arguments)
    • newMethod

      public static Method newMethod(String name, TypeRef returnType, Property... arguments)
    • getComments

      public List<String> getComments()
      Description copied from interface: Commentable
      Get the list of comments.
      Specified by:
      getComments in interface Commentable
      Returns:
      a List of comments.
    • getAnnotations

      public List<AnnotationRef> getAnnotations()
      Specified by:
      getAnnotations in interface Annotatable
    • isVarArgPreferred

      public boolean isVarArgPreferred()
    • getParameters

      public List<TypeParamDef> getParameters()
    • getName

      public String getName()
    • getReturnType

      public TypeRef getReturnType()
    • getArguments

      public List<Property> getArguments()
    • getExceptions

      public List<ClassRef> getExceptions()
    • isDefaultMethod

      public boolean isDefaultMethod()
    • getBlock

      public Block getBlock()
    • withErasure

      public Method withErasure()
    • getReferences

      public Set<ClassRef> getReferences()
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • getSignature

      public String getSignature()
    • renderDefinition

      public String renderDefinition(TypeDef enclosingType)
    • renderDefinition

      public void renderDefinition(StringBuilder sb, TypeDef enclosingType)
    • render

      public String render()
      Description copied from interface: Renderable
      Render the type into a String for the purpose of code generation. This is slightly different from the `toString()` method as `toString()` is mostly needed for logging / debugging and should be idempotent. Regarding idempotency this method may yield different result based on the context it is used even if the internal state of the object does not change. An example of such case, is a reference to class that may change based on the package from which it's refenced.
      Specified by:
      render in interface Renderable
      Returns:
      the String representation of the object as it's meant to appear in the generated code.
    • render

      public String render(TypeDef enclosingType)
    • toString

      public String toString()
      Overrides:
      toString in class Object