Package com.squareup.javapoet
Class MethodSpec
- java.lang.Object
-
- com.squareup.javapoet.MethodSpec
-
public final class MethodSpec extends java.lang.Object
A generated constructor or method declaration.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
MethodSpec.Builder
-
Field Summary
Fields Modifier and Type Field Description java.util.List<AnnotationSpec>
annotations
CodeBlock
code
(package private) static java.lang.String
CONSTRUCTOR
CodeBlock
defaultValue
java.util.List<TypeName>
exceptions
CodeBlock
javadoc
java.util.Set<javax.lang.model.element.Modifier>
modifiers
java.lang.String
name
(package private) static ClassName
OVERRIDE
java.util.List<ParameterSpec>
parameters
TypeName
returnType
java.util.List<TypeVariableName>
typeVariables
boolean
varargs
-
Constructor Summary
Constructors Modifier Constructor Description private
MethodSpec(MethodSpec.Builder builder)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static MethodSpec.Builder
constructorBuilder()
(package private) void
emit(CodeWriter codeWriter, java.lang.String enclosingName, java.util.Set<javax.lang.model.element.Modifier> implicitModifiers)
boolean
equals(java.lang.Object o)
int
hashCode()
boolean
hasModifier(javax.lang.model.element.Modifier modifier)
boolean
isConstructor()
private boolean
lastParameterIsArray(java.util.List<ParameterSpec> parameters)
static MethodSpec.Builder
methodBuilder(java.lang.String name)
static MethodSpec.Builder
overriding(javax.lang.model.element.ExecutableElement method)
Returns a new method spec builder that overridesmethod
.static MethodSpec.Builder
overriding(javax.lang.model.element.ExecutableElement method, javax.lang.model.type.DeclaredType enclosing, javax.lang.model.util.Types types)
Returns a new method spec builder that overridesmethod
as a member ofenclosing
.MethodSpec.Builder
toBuilder()
java.lang.String
toString()
-
-
-
Field Detail
-
CONSTRUCTOR
static final java.lang.String CONSTRUCTOR
- See Also:
- Constant Field Values
-
OVERRIDE
static final ClassName OVERRIDE
-
name
public final java.lang.String name
-
javadoc
public final CodeBlock javadoc
-
annotations
public final java.util.List<AnnotationSpec> annotations
-
modifiers
public final java.util.Set<javax.lang.model.element.Modifier> modifiers
-
typeVariables
public final java.util.List<TypeVariableName> typeVariables
-
returnType
public final TypeName returnType
-
parameters
public final java.util.List<ParameterSpec> parameters
-
varargs
public final boolean varargs
-
exceptions
public final java.util.List<TypeName> exceptions
-
code
public final CodeBlock code
-
defaultValue
public final CodeBlock defaultValue
-
-
Constructor Detail
-
MethodSpec
private MethodSpec(MethodSpec.Builder builder)
-
-
Method Detail
-
lastParameterIsArray
private boolean lastParameterIsArray(java.util.List<ParameterSpec> parameters)
-
emit
void emit(CodeWriter codeWriter, java.lang.String enclosingName, java.util.Set<javax.lang.model.element.Modifier> implicitModifiers) throws java.io.IOException
- Throws:
java.io.IOException
-
hasModifier
public boolean hasModifier(javax.lang.model.element.Modifier modifier)
-
isConstructor
public boolean isConstructor()
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
methodBuilder
public static MethodSpec.Builder methodBuilder(java.lang.String name)
-
constructorBuilder
public static MethodSpec.Builder constructorBuilder()
-
overriding
public static MethodSpec.Builder overriding(javax.lang.model.element.ExecutableElement method)
Returns a new method spec builder that overridesmethod
.This will copy its visibility modifiers, type parameters, return type, name, parameters, and throws declarations. An
Override
annotation will be added.
-
overriding
public static MethodSpec.Builder overriding(javax.lang.model.element.ExecutableElement method, javax.lang.model.type.DeclaredType enclosing, javax.lang.model.util.Types types)
Returns a new method spec builder that overridesmethod
as a member ofenclosing
. This will resolve type parameters: for example overridingComparable.compareTo(T)
in a type that implementsComparable<Movie>
, theT
parameter will be resolved toMovie
.This will copy its visibility modifiers, type parameters, return type, name, parameters, and throws declarations. An
Override
annotation will be added.
-
toBuilder
public MethodSpec.Builder toBuilder()
-
-