Package org.vesalainen.bcc
Class MethodInfo
- java.lang.Object
-
- org.vesalainen.bcc.MethodInfo
-
- All Implemented Interfaces:
javax.lang.model.AnnotatedConstruct,javax.lang.model.element.Element,javax.lang.model.element.ExecutableElement,javax.lang.model.element.Parameterizable,Writable
public class MethodInfo extends java.lang.Object implements Writable, javax.lang.model.element.ExecutableElement
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<AttributeInfo>attributesprivate booleanbridgeprivate CodeAttributecodeprivate intdescriptor_indexprivate ClassFileenclosingElementprivate javax.lang.model.element.ExecutableElementexecutableElementprivate MethodCompilermcprivate intname_indexprivate booleanreadyToWriteprivate booleansyntheticprivate booleanvarArgs
-
Constructor Summary
Constructors Constructor Description MethodInfo(ClassFile cf, java.io.DataInput in)MethodInfo(SubClass cf, javax.lang.model.element.ExecutableElement executableElement)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <R,P>
Raccept(javax.lang.model.element.ElementVisitor<R,P> v, P p)private voidaddSignatureIfNeed()private voidaddThrowables()javax.lang.model.type.TypeMirrorasType()booleanequals(java.lang.Object obj)<A extends java.lang.annotation.Annotation>
AgetAnnotation(java.lang.Class<A> annotationType)java.util.List<? extends javax.lang.model.element.AnnotationMirror>getAnnotationMirrors()<A extends java.lang.annotation.Annotation>
A[]getAnnotationsByType(java.lang.Class<A> annotationType)CodeAttributegetCodeAttribute()javax.lang.model.element.AnnotationValuegetDefaultValue()java.lang.StringgetDescriptor()intgetDescriptor_index()java.util.List<? extends javax.lang.model.element.Element>getEnclosedElements()ClassFilegetEnclosingElement()javax.lang.model.element.ExecutableElementgetExecutableElement()javax.lang.model.element.ElementKindgetKind()MethodCompilergetMc()java.util.Set<javax.lang.model.element.Modifier>getModifiers()java.lang.StringgetModifiersAsString()intgetName_index()java.util.List<? extends javax.lang.model.element.VariableElement>getParameters()javax.lang.model.type.TypeMirrorgetReceiverType()javax.lang.model.type.TypeMirrorgetReturnType()javax.lang.model.element.NamegetSimpleName()java.util.List<? extends javax.lang.model.type.TypeMirror>getThrownTypes()java.util.List<? extends javax.lang.model.element.TypeParameterElement>getTypeParameters()inthashCode()booleanisDefault()booleanisVarArgs()voidreadyToWrite()Call to this method tells that the Attribute is ready writing.voidsetMc(MethodCompiler mc)voidwrite(java.io.DataOutput out)
-
-
-
Field Detail
-
executableElement
private javax.lang.model.element.ExecutableElement executableElement
-
enclosingElement
private ClassFile enclosingElement
-
name_index
private int name_index
-
descriptor_index
private int descriptor_index
-
attributes
private java.util.List<AttributeInfo> attributes
-
mc
private MethodCompiler mc
-
bridge
private boolean bridge
-
varArgs
private boolean varArgs
-
synthetic
private boolean synthetic
-
code
private CodeAttribute code
-
readyToWrite
private boolean readyToWrite
-
-
Method Detail
-
getExecutableElement
public javax.lang.model.element.ExecutableElement getExecutableElement()
-
getModifiersAsString
public java.lang.String getModifiersAsString()
-
addThrowables
private void addThrowables()
-
addSignatureIfNeed
private void addSignatureIfNeed()
-
isVarArgs
public boolean isVarArgs()
- Specified by:
isVarArgsin interfacejavax.lang.model.element.ExecutableElement
-
getEnclosingElement
public ClassFile getEnclosingElement()
- Specified by:
getEnclosingElementin interfacejavax.lang.model.element.Element
-
accept
public <R,P> R accept(javax.lang.model.element.ElementVisitor<R,P> v, P p)- Specified by:
acceptin interfacejavax.lang.model.element.Element
-
getDescriptor
public java.lang.String getDescriptor()
-
getMc
public MethodCompiler getMc()
-
setMc
public void setMc(MethodCompiler mc)
-
getCodeAttribute
public CodeAttribute getCodeAttribute()
-
readyToWrite
public void readyToWrite()
Call to this method tells that the Attribute is ready writing. This method must be called before constant pool is written.
-
write
public void write(java.io.DataOutput out) throws java.io.IOException
-
getDescriptor_index
public int getDescriptor_index()
-
getName_index
public int getName_index()
-
getModifiers
public java.util.Set<javax.lang.model.element.Modifier> getModifiers()
- Specified by:
getModifiersin interfacejavax.lang.model.element.Element
-
getThrownTypes
public java.util.List<? extends javax.lang.model.type.TypeMirror> getThrownTypes()
- Specified by:
getThrownTypesin interfacejavax.lang.model.element.ExecutableElement
-
getTypeParameters
public java.util.List<? extends javax.lang.model.element.TypeParameterElement> getTypeParameters()
- Specified by:
getTypeParametersin interfacejavax.lang.model.element.ExecutableElement- Specified by:
getTypeParametersin interfacejavax.lang.model.element.Parameterizable
-
getReturnType
public javax.lang.model.type.TypeMirror getReturnType()
- Specified by:
getReturnTypein interfacejavax.lang.model.element.ExecutableElement
-
getParameters
public java.util.List<? extends javax.lang.model.element.VariableElement> getParameters()
- Specified by:
getParametersin interfacejavax.lang.model.element.ExecutableElement
-
getDefaultValue
public javax.lang.model.element.AnnotationValue getDefaultValue()
- Specified by:
getDefaultValuein interfacejavax.lang.model.element.ExecutableElement
-
getSimpleName
public javax.lang.model.element.Name getSimpleName()
- Specified by:
getSimpleNamein interfacejavax.lang.model.element.Element- Specified by:
getSimpleNamein interfacejavax.lang.model.element.ExecutableElement
-
asType
public javax.lang.model.type.TypeMirror asType()
- Specified by:
asTypein interfacejavax.lang.model.element.Element
-
getKind
public javax.lang.model.element.ElementKind getKind()
- Specified by:
getKindin interfacejavax.lang.model.element.Element
-
getAnnotationMirrors
public java.util.List<? extends javax.lang.model.element.AnnotationMirror> getAnnotationMirrors()
- Specified by:
getAnnotationMirrorsin interfacejavax.lang.model.AnnotatedConstruct- Specified by:
getAnnotationMirrorsin interfacejavax.lang.model.element.Element
-
getAnnotation
public <A extends java.lang.annotation.Annotation> A getAnnotation(java.lang.Class<A> annotationType)
- Specified by:
getAnnotationin interfacejavax.lang.model.AnnotatedConstruct- Specified by:
getAnnotationin interfacejavax.lang.model.element.Element
-
getEnclosedElements
public java.util.List<? extends javax.lang.model.element.Element> getEnclosedElements()
- Specified by:
getEnclosedElementsin interfacejavax.lang.model.element.Element
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfacejavax.lang.model.element.Element- Overrides:
hashCodein classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Specified by:
equalsin interfacejavax.lang.model.element.Element- Overrides:
equalsin classjava.lang.Object
-
getReceiverType
public javax.lang.model.type.TypeMirror getReceiverType()
- Specified by:
getReceiverTypein interfacejavax.lang.model.element.ExecutableElement
-
isDefault
public boolean isDefault()
- Specified by:
isDefaultin interfacejavax.lang.model.element.ExecutableElement
-
getAnnotationsByType
public <A extends java.lang.annotation.Annotation> A[] getAnnotationsByType(java.lang.Class<A> annotationType)
- Specified by:
getAnnotationsByTypein interfacejavax.lang.model.AnnotatedConstruct
-
-