test_class.file: webbeans-impl/src/test/java/org/apache/webbeans/portable/AnnotatedTypeImplTest.java
test_class.identifier: AnnotatedTypeImplTest
test_case.body: @Test
      public void hashCodeComputation()
      {
          final AnnotatedType<Foo> annotatedType = new AnnotatedTypeImpl<>(
                  new WebBeansContext(), Foo.class, null);
          assertEquals(annotatedType.hashCode(), annotatedType.hashCode());
  
          final AnnotatedType<Foo> wrapped = new AnnotatedTypeWrapper<>(null, annotatedType, "");
          assertEquals(annotatedType.hashCode(), wrapped.hashCode());
      }
test_case.class_method_signature: AnnotatedTypeImplTest.hashCodeComputation()
test_case.full_signature: @Test public void hashCodeComputation()
test_case.identifier: hashCodeComputation
test_case.invocations: assertEquals hashCode hashCode assertEquals hashCode hashCode
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void hashCodeComputation()
focal_class.declarator: supertype
focal_class.modifier: private final
focal_class.original_string: private final AnnotatedType<? super X> supertype;
focal_class.type: AnnotatedType<? super X>
focal_class.var_name: supertype
focal_class.declarator: annotatedClass
focal_class.modifier: private final
focal_class.original_string: private final Class<X> annotatedClass;
focal_class.type: Class<X>
focal_class.var_name: annotatedClass
focal_class.declarator: state
focal_class.modifier: private volatile
focal_class.original_string: private volatile State state;
focal_class.type: State
focal_class.var_name: state
focal_class.file: webbeans-impl/src/main/java/org/apache/webbeans/portable/AnnotatedTypeImpl.java
focal_class.identifier: AnnotatedTypeImpl
focal_class.interfaces: implements AnnotatedType<X>
focal_class.class_method_signature: AnnotatedTypeImpl.AnnotatedTypeImpl(WebBeansContext webBeansContext, Class<X> annotatedClass, AnnotatedType<? super X> supertype)
focal_class.full_signature:   AnnotatedTypeImpl(WebBeansContext webBeansContext, Class<X> annotatedClass, AnnotatedType<? super X> supertype)
focal_class.identifier: AnnotatedTypeImpl
focal_class.parameters: (WebBeansContext webBeansContext, Class<X> annotatedClass, AnnotatedType<? super X> supertype)
focal_class.signature:  AnnotatedTypeImpl(WebBeansContext webBeansContext, Class<X> annotatedClass, AnnotatedType<? super X> supertype)
focal_class.class_method_signature: AnnotatedTypeImpl.AnnotatedTypeImpl(WebBeansContext webBeansContext, AnnotatedType otherAnnotatedType)
focal_class.full_signature: public  AnnotatedTypeImpl(WebBeansContext webBeansContext, AnnotatedType otherAnnotatedType)
focal_class.identifier: AnnotatedTypeImpl
focal_class.modifiers: public
focal_class.parameters: (WebBeansContext webBeansContext, AnnotatedType otherAnnotatedType)
focal_class.signature:  AnnotatedTypeImpl(WebBeansContext webBeansContext, AnnotatedType otherAnnotatedType)
focal_class.class_method_signature: AnnotatedTypeImpl.getJavaClass()
focal_class.full_signature: @Override public Class<X> getJavaClass()
focal_class.identifier: getJavaClass
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Class<X>
focal_class.signature: Class<X> getJavaClass()
focal_class.class_method_signature: AnnotatedTypeImpl.getConstructors()
focal_class.full_signature: @Override public Set<AnnotatedConstructor<X>> getConstructors()
focal_class.identifier: getConstructors
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Set<AnnotatedConstructor<X>>
focal_class.signature: Set<AnnotatedConstructor<X>> getConstructors()
focal_class.class_method_signature: AnnotatedTypeImpl.getFields()
focal_class.full_signature: @Override public Set<AnnotatedField<? super X>> getFields()
focal_class.identifier: getFields
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Set<AnnotatedField<? super X>>
focal_class.signature: Set<AnnotatedField<? super X>> getFields()
focal_class.class_method_signature: AnnotatedTypeImpl.getMethods()
focal_class.full_signature: @Override public Set<AnnotatedMethod<? super X>> getMethods()
focal_class.identifier: getMethods
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Set<AnnotatedMethod<? super X>>
focal_class.signature: Set<AnnotatedMethod<? super X>> getMethods()
focal_class.class_method_signature: AnnotatedTypeImpl.getOwningClass()
focal_class.full_signature: @Override protected Class<?> getOwningClass()
focal_class.identifier: getOwningClass
focal_class.modifiers: @Override protected
focal_class.parameters: ()
focal_class.return: Class<?>
focal_class.signature: Class<?> getOwningClass()
focal_class.class_method_signature: AnnotatedTypeImpl.getDeclaringClass()
focal_class.full_signature: @Override protected Class<?> getDeclaringClass()
focal_class.identifier: getDeclaringClass
focal_class.modifiers: @Override protected
focal_class.parameters: ()
focal_class.return: Class<?>
focal_class.signature: Class<?> getDeclaringClass()
focal_class.class_method_signature: AnnotatedTypeImpl.equals(final Object o)
focal_class.full_signature: @Override public boolean equals(final Object o)
focal_class.identifier: equals
focal_class.modifiers: @Override public
focal_class.parameters: (final Object o)
focal_class.return: boolean
focal_class.signature: boolean equals(final Object o)
focal_class.class_method_signature: AnnotatedTypeImpl.hashCode()
focal_class.full_signature: @Override public int hashCode()
focal_class.identifier: hashCode
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int hashCode()
focal_class.class_method_signature: AnnotatedTypeImpl.getState()
focal_class.full_signature: private State getState()
focal_class.identifier: getState
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: State
focal_class.signature: State getState()
focal_class.superclass: extends AbstractAnnotated
focal_method.body: @Override
      public int hashCode() // enough, no need to create a hashcode from attributes
      {
          return super.hashCode();
      }
focal_method.class_method_signature: AnnotatedTypeImpl.hashCode()
focal_method.full_signature: @Override public int hashCode()
focal_method.identifier: hashCode
focal_method.invocations: hashCode
focal_method.modifiers: @Override public
focal_method.parameters: ()
focal_method.return: int
focal_method.signature: int hashCode()