# Hierarchy For All Packages

Package Hierarchies:

- org.eclipse.gef.common.activate,
- org.eclipse.gef.common.adapt,
- org.eclipse.gef.common.adapt.inject,
- org.eclipse.gef.common.beans.binding,
- org.eclipse.gef.common.beans.property,
- org.eclipse.gef.common.beans.value,
- org.eclipse.gef.common.collections,
- org.eclipse.gef.common.dispose,
- org.eclipse.gef.common.reflect

## Class Hierarchy

- java.lang.Object
  - com.google.inject.AbstractModule (implements com.google.inject.Module)
    - org.eclipse.gef.common.adapt.inject.AdapterInjectionSupport
  - org.eclipse.gef.common.activate.ActivatableSupport
  - org.eclipse.gef.common.adapt.inject.AdaptableScopes
  - org.eclipse.gef.common.adapt.AdaptableSupport<A> (implements org.eclipse.gef.common.dispose.IDisposable)
  - org.eclipse.gef.common.adapt.inject.AdaptableTypeListener (implements com.google.inject.spi.TypeListener)
  - org.eclipse.gef.common.adapt.inject.AdapterInjector (implements com.google.inject.MembersInjector<T>)
  - org.eclipse.gef.common.adapt.AdapterKey<T> (implements java.lang.Comparable<T>)
  - org.eclipse.gef.common.adapt.inject.AdapterMaps
  - org.eclipse.gef.common.adapt.AdapterStore (implements org.eclipse.gef.common.adapt.IAdaptable)
  - org.eclipse.gef.common.beans.binding.BindingUtils
  - org.eclipse.gef.common.collections.CollectionUtils
  - org.eclipse.gef.common.adapt.IAdaptable.Bound.Impl<T> (implements org.eclipse.gef.common.adapt.IAdaptable.Bound<A>)
  - javafx.collections.ListChangeListener.Change<E>
    - org.eclipse.gef.common.collections.ListListenerHelperEx.AtomicChange<E>
  - javafx.beans.binding.ListExpression<E> (implements javafx.beans.value.ObservableListValue<E>)
    - javafx.beans.property.ReadOnlyListProperty<E> (implements javafx.beans.property.ReadOnlyProperty<T>)
      - javafx.beans.property.ListProperty<E> (implements javafx.beans.property.Property<T>, javafx.beans.value.WritableListValue<E>)
        - javafx.beans.property.ListPropertyBase<E>
          - javafx.beans.property.SimpleListProperty<E>
            - javafx.beans.property.ReadOnlyListWrapper<E>
              - org.eclipse.gef.common.beans.property.ReadOnlyListWrapperEx<E>
            - org.eclipse.gef.common.beans.property.SimpleListPropertyEx<E>
      - javafx.beans.property.ReadOnlyListPropertyBase<E>
        - org.eclipse.gef.common.beans.property.ReadOnlyListPropertyBaseEx<E>
  - org.eclipse.gef.common.collections.ListListenerHelperEx<E>
    - org.eclipse.gef.common.beans.binding.ListExpressionHelperEx<E>
  - org.eclipse.gef.common.collections.ListListenerHelperEx.ElementarySubChange<E>
  - javafx.collections.MapChangeListener.Change<K,V>
    - org.eclipse.gef.common.collections.MapListenerHelperEx.AtomicChange<K,V>
  - javafx.beans.binding.MapExpression<K,V> (implements javafx.beans.value.ObservableMapValue<K,V>)
    - javafx.beans.property.ReadOnlyMapProperty<K,V> (implements javafx.beans.property.ReadOnlyProperty<T>)
      - javafx.beans.property.MapProperty<K,V> (implements javafx.beans.property.Property<T>, javafx.beans.value.WritableMapValue<K,V>)
        - javafx.beans.property.MapPropertyBase<K,V>
          - javafx.beans.property.SimpleMapProperty<K,V>
            - javafx.beans.property.ReadOnlyMapWrapper<K,V>
              - org.eclipse.gef.common.beans.property.ReadOnlyMapWrapperEx<K,V>
            - org.eclipse.gef.common.beans.property.SimpleMapPropertyEx<K,V>
      - javafx.beans.property.ReadOnlyMapPropertyBase<K,V>
        - org.eclipse.gef.common.beans.property.ReadOnlyMapPropertyBaseEx<K,V>
  - org.eclipse.gef.common.collections.MapListenerHelperEx<K,V>
    - org.eclipse.gef.common.beans.binding.MapExpressionHelperEx<K,V>
  - org.eclipse.gef.common.collections.MultisetChangeListener.Change<E>
    - org.eclipse.gef.common.collections.MultisetListenerHelper.AtomicChange<E>
  - org.eclipse.gef.common.beans.binding.MultisetExpression<E> (implements org.eclipse.gef.common.beans.value.ObservableMultisetValue<E>)
    - org.eclipse.gef.common.beans.binding.MultisetBinding<E> (implements javafx.beans.binding.Binding<T>)
    - org.eclipse.gef.common.beans.property.ReadOnlyMultisetProperty<E> (implements javafx.beans.property.ReadOnlyProperty<T>)
      - org.eclipse.gef.common.beans.property.MultisetProperty<E> (implements javafx.beans.property.Property<T>, org.eclipse.gef.common.beans.value.WritableMultisetValue<E>)
        - org.eclipse.gef.common.beans.property.MultisetPropertyBase<E>
          - org.eclipse.gef.common.beans.property.SimpleMultisetProperty<E>
            - org.eclipse.gef.common.beans.property.ReadOnlyMultisetWrapper<E>
      - org.eclipse.gef.common.beans.property.ReadOnlyMultisetPropertyBase<E>
  - org.eclipse.gef.common.collections.MultisetListenerHelper<E>
    - org.eclipse.gef.common.beans.binding.MultisetExpressionHelper<E>
  - org.eclipse.gef.common.collections.MultisetListenerHelper.ElementarySubChange<E>
  - org.eclipse.gef.common.reflect.ReflectionUtils
  - javafx.collections.SetChangeListener.Change<E>
    - org.eclipse.gef.common.collections.SetListenerHelperEx.AtomicChange<E>
  - javafx.beans.binding.SetExpression<E> (implements javafx.beans.value.ObservableSetValue<E>)
    - javafx.beans.property.ReadOnlySetProperty<E> (implements javafx.beans.property.ReadOnlyProperty<T>)
      - javafx.beans.property.ReadOnlySetPropertyBase<E>
        - org.eclipse.gef.common.beans.property.ReadOnlySetPropertyBaseEx<E>
      - javafx.beans.property.SetProperty<E> (implements javafx.beans.property.Property<T>, javafx.beans.value.WritableSetValue<E>)
        - javafx.beans.property.SetPropertyBase<E>
          - javafx.beans.property.SimpleSetProperty<E>
            - javafx.beans.property.ReadOnlySetWrapper<E>
              - org.eclipse.gef.common.beans.property.ReadOnlySetWrapperEx<E>
            - org.eclipse.gef.common.beans.property.SimpleSetPropertyEx<E>
  - org.eclipse.gef.common.collections.SetListenerHelperEx<E>
    - org.eclipse.gef.common.beans.binding.SetExpressionHelperEx<E>
  - org.eclipse.gef.common.collections.SetMultimapChangeListener.Change<K,V>
    - org.eclipse.gef.common.collections.SetMultimapListenerHelper.AtomicChange<K,V>
  - org.eclipse.gef.common.beans.binding.SetMultimapExpression<K,V> (implements org.eclipse.gef.common.beans.value.ObservableSetMultimapValue<K,V>)
    - org.eclipse.gef.common.beans.property.ReadOnlySetMultimapProperty<K,V> (implements javafx.beans.property.ReadOnlyProperty<T>)
      - org.eclipse.gef.common.beans.property.ReadOnlySetMultimapPropertyBase<K,V>
      - org.eclipse.gef.common.beans.property.SetMultimapProperty<K,V> (implements javafx.beans.property.Property<T>, org.eclipse.gef.common.beans.value.WritableSetMultimapValue<K,V>)
        - org.eclipse.gef.common.beans.property.SetMultimapPropertyBase<K,V>
          - org.eclipse.gef.common.beans.property.SimpleSetMultimapProperty<K,V>
            - org.eclipse.gef.common.beans.property.ReadOnlySetMultimapWrapper<K,V>
    - org.eclipse.gef.common.beans.binding.SetMultimapBinding<K,V> (implements javafx.beans.binding.Binding<T>)
  - org.eclipse.gef.common.collections.SetMultimapListenerHelper<K,V>
    - org.eclipse.gef.common.beans.binding.SetMultimapExpressionHelper<K,V>
  - org.eclipse.gef.common.collections.SetMultimapListenerHelper.ElementarySubChange<K,V>
  - org.eclipse.gef.common.reflect.Types

## Interface Hierarchy

- org.eclipse.gef.common.activate.IActivatable
- org.eclipse.gef.common.adapt.IAdaptable
- org.eclipse.gef.common.adapt.IAdaptable.Bound<A>
- org.eclipse.gef.common.dispose.IDisposable
- java.lang.Iterable<T>
  - java.util.Collection<E>
    - com.google.common.collect.Multiset<E>
      - org.eclipse.gef.common.collections.ObservableMultiset<E> (also extends javafx.beans.Observable)
        - org.eclipse.gef.common.beans.value.ObservableMultisetValue<E> (also extends javafx.beans.value.ObservableObjectValue<T>)
        - org.eclipse.gef.common.beans.value.WritableMultisetValue<E> (also extends javafx.beans.value.WritableObjectValue<T>)
      - org.eclipse.gef.common.beans.value.ObservableMultisetValue<E> (also extends org.eclipse.gef.common.collections.ObservableMultiset<E>, javafx.beans.value.ObservableObjectValue<T>)
      - org.eclipse.gef.common.beans.value.WritableMultisetValue<E> (also extends org.eclipse.gef.common.collections.ObservableMultiset<E>, javafx.beans.value.WritableObjectValue<T>)
    - org.eclipse.gef.common.collections.ObservableMultiset<E> (also extends com.google.common.collect.Multiset<E>, javafx.beans.Observable)
      - org.eclipse.gef.common.beans.value.ObservableMultisetValue<E> (also extends javafx.beans.value.ObservableObjectValue<T>)
      - org.eclipse.gef.common.beans.value.WritableMultisetValue<E> (also extends javafx.beans.value.WritableObjectValue<T>)
    - org.eclipse.gef.common.beans.value.ObservableMultisetValue<E> (also extends org.eclipse.gef.common.collections.ObservableMultiset<E>, javafx.beans.value.ObservableObjectValue<T>)
    - org.eclipse.gef.common.beans.value.WritableMultisetValue<E> (also extends org.eclipse.gef.common.collections.ObservableMultiset<E>, javafx.beans.value.WritableObjectValue<T>)
  - com.google.common.collect.Multiset<E>
    - org.eclipse.gef.common.collections.ObservableMultiset<E> (also extends javafx.beans.Observable)
      - org.eclipse.gef.common.beans.value.ObservableMultisetValue<E> (also extends javafx.beans.value.ObservableObjectValue<T>)
      - org.eclipse.gef.common.beans.value.WritableMultisetValue<E> (also extends javafx.beans.value.WritableObjectValue<T>)
    - org.eclipse.gef.common.beans.value.ObservableMultisetValue<E> (also extends org.eclipse.gef.common.collections.ObservableMultiset<E>, javafx.beans.value.ObservableObjectValue<T>)
    - org.eclipse.gef.common.beans.value.WritableMultisetValue<E> (also extends org.eclipse.gef.common.collections.ObservableMultiset<E>, javafx.beans.value.WritableObjectValue<T>)
  - org.eclipse.gef.common.collections.ObservableMultiset<E> (also extends com.google.common.collect.Multiset<E>, javafx.beans.Observable)
    - org.eclipse.gef.common.beans.value.ObservableMultisetValue<E> (also extends javafx.beans.value.ObservableObjectValue<T>)
    - org.eclipse.gef.common.beans.value.WritableMultisetValue<E> (also extends javafx.beans.value.WritableObjectValue<T>)
  - org.eclipse.gef.common.beans.value.ObservableMultisetValue<E> (also extends org.eclipse.gef.common.collections.ObservableMultiset<E>, javafx.beans.value.ObservableObjectValue<T>)
  - org.eclipse.gef.common.beans.value.WritableMultisetValue<E> (also extends org.eclipse.gef.common.collections.ObservableMultiset<E>, javafx.beans.value.WritableObjectValue<T>)
- com.google.common.collect.Multimap<K,V>
  - org.eclipse.gef.common.collections.ObservableSetMultimap<K,V> (also extends javafx.beans.Observable, com.google.common.collect.SetMultimap<K,V>)
    - org.eclipse.gef.common.beans.value.ObservableSetMultimapValue<K,V> (also extends javafx.beans.value.ObservableObjectValue<T>)
    - org.eclipse.gef.common.beans.value.WritableSetMultimapValue<K,V> (also extends javafx.beans.value.WritableObjectValue<T>)
  - org.eclipse.gef.common.beans.value.ObservableSetMultimapValue<K,V> (also extends javafx.beans.value.ObservableObjectValue<T>, org.eclipse.gef.common.collections.ObservableSetMultimap<K,V>)
  - com.google.common.collect.SetMultimap<K,V>
    - org.eclipse.gef.common.collections.ObservableSetMultimap<K,V> (also extends javafx.beans.Observable)
      - org.eclipse.gef.common.beans.value.ObservableSetMultimapValue<K,V> (also extends javafx.beans.value.ObservableObjectValue<T>)
      - org.eclipse.gef.common.beans.value.WritableSetMultimapValue<K,V> (also extends javafx.beans.value.WritableObjectValue<T>)
    - org.eclipse.gef.common.beans.value.ObservableSetMultimapValue<K,V> (also extends javafx.beans.value.ObservableObjectValue<T>, org.eclipse.gef.common.collections.ObservableSetMultimap<K,V>)
    - org.eclipse.gef.common.beans.value.WritableSetMultimapValue<K,V> (also extends org.eclipse.gef.common.collections.ObservableSetMultimap<K,V>, javafx.beans.value.WritableObjectValue<T>)
  - org.eclipse.gef.common.beans.value.WritableSetMultimapValue<K,V> (also extends org.eclipse.gef.common.collections.ObservableSetMultimap<K,V>, javafx.beans.value.WritableObjectValue<T>)
- org.eclipse.gef.common.collections.MultisetChangeListener<E>
- javafx.beans.Observable
  - org.eclipse.gef.common.collections.ObservableMultiset<E> (also extends com.google.common.collect.Multiset<E>)
    - org.eclipse.gef.common.beans.value.ObservableMultisetValue<E> (also extends javafx.beans.value.ObservableObjectValue<T>)
    - org.eclipse.gef.common.beans.value.WritableMultisetValue<E> (also extends javafx.beans.value.WritableObjectValue<T>)
  - org.eclipse.gef.common.beans.value.ObservableMultisetValue<E> (also extends org.eclipse.gef.common.collections.ObservableMultiset<E>, javafx.beans.value.ObservableObjectValue<T>)
  - javafx.beans.value.ObservableObjectValue<T>
    - org.eclipse.gef.common.beans.value.ObservableMultisetValue<E> (also extends org.eclipse.gef.common.collections.ObservableMultiset<E>)
    - org.eclipse.gef.common.beans.value.ObservableSetMultimapValue<K,V> (also extends org.eclipse.gef.common.collections.ObservableSetMultimap<K,V>)
  - org.eclipse.gef.common.collections.ObservableSetMultimap<K,V> (also extends com.google.common.collect.SetMultimap<K,V>)
    - org.eclipse.gef.common.beans.value.ObservableSetMultimapValue<K,V> (also extends javafx.beans.value.ObservableObjectValue<T>)
    - org.eclipse.gef.common.beans.value.WritableSetMultimapValue<K,V> (also extends javafx.beans.value.WritableObjectValue<T>)
  - org.eclipse.gef.common.beans.value.ObservableSetMultimapValue<K,V> (also extends javafx.beans.value.ObservableObjectValue<T>, org.eclipse.gef.common.collections.ObservableSetMultimap<K,V>)
  - javafx.beans.value.ObservableValue<T>
    - org.eclipse.gef.common.beans.value.ObservableMultisetValue<E> (also extends org.eclipse.gef.common.collections.ObservableMultiset<E>, javafx.beans.value.ObservableObjectValue<T>)
    - javafx.beans.value.ObservableObjectValue<T>
      - org.eclipse.gef.common.beans.value.ObservableMultisetValue<E> (also extends org.eclipse.gef.common.collections.ObservableMultiset<E>)
      - org.eclipse.gef.common.beans.value.ObservableSetMultimapValue<K,V> (also extends org.eclipse.gef.common.collections.ObservableSetMultimap<K,V>)
    - org.eclipse.gef.common.beans.value.ObservableSetMultimapValue<K,V> (also extends javafx.beans.value.ObservableObjectValue<T>, org.eclipse.gef.common.collections.ObservableSetMultimap<K,V>)
  - org.eclipse.gef.common.beans.value.WritableMultisetValue<E> (also extends org.eclipse.gef.common.collections.ObservableMultiset<E>, javafx.beans.value.WritableObjectValue<T>)
  - org.eclipse.gef.common.beans.value.WritableSetMultimapValue<K,V> (also extends org.eclipse.gef.common.collections.ObservableSetMultimap<K,V>, javafx.beans.value.WritableObjectValue<T>)
- org.eclipse.gef.common.collections.SetMultimapChangeListener<K,V>
- javafx.beans.value.WritableValue<T>
  - org.eclipse.gef.common.beans.value.WritableMultisetValue<E> (also extends org.eclipse.gef.common.collections.ObservableMultiset<E>, javafx.beans.value.WritableObjectValue<T>)
  - javafx.beans.value.WritableObjectValue<T>
    - org.eclipse.gef.common.beans.value.WritableMultisetValue<E> (also extends org.eclipse.gef.common.collections.ObservableMultiset<E>)
    - org.eclipse.gef.common.beans.value.WritableSetMultimapValue<K,V> (also extends org.eclipse.gef.common.collections.ObservableSetMultimap<K,V>)
  - org.eclipse.gef.common.beans.value.WritableSetMultimapValue<K,V> (also extends org.eclipse.gef.common.collections.ObservableSetMultimap<K,V>, javafx.beans.value.WritableObjectValue<T>)

## Annotation Type Hierarchy

- org.eclipse.gef.common.adapt.inject.InjectAdapters (implements java.lang.annotation.Annotation)

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - org.eclipse.gef.common.adapt.inject.AdapterInjectionSupport.LoggingMode
    - org.eclipse.gef.common.collections.ListListenerHelperEx.ElementarySubChange.Kind