@PublicAPI(usage = ACCESS)
    public Set<Dependency> getDirectDependenciesFromSelf() {
        return javaClassDependencies.getDirectDependenciesFromClass();
    }
@Test
    public void direct_dependencies_from_self_finds_correct_set_of_target_types() {
        JavaClass javaClass = importPackagesOf(getClass()).get(ClassWithAnnotationDependencies.class);

        Set<JavaClass> targets = javaClass.getDirectDependenciesFromSelf().stream().map(GET_TARGET_CLASS).collect(toSet());

        assertThatTypes(targets).matchInAnyOrder(
                B.class, AhavingMembersOfTypeB.class, Object.class, String.class,
                List.class, Serializable.class, SomeSuperclass.class,
                WithType.class, WithNestedAnnotations.class, OnClass.class, OnMethod.class, OnMethodParam.class,
                OnConstructor.class, OnField.class, MetaAnnotated.class, WithEnum.class, WithPrimitive.class,
                WithOtherEnum.class, WithOtherType.class,
                SomeEnumAsAnnotationParameter.class, SomeEnumAsAnnotationArrayParameter.class,
                SomeEnumAsNestedAnnotationParameter.class, SomeEnumAsDefaultParameter.class,
                SomeOtherEnumAsAnnotationParameter.class, SomeOtherEnumAsDefaultParameter.class,
                SomeOtherEnumAsAnnotationArrayParameter.class, SomeTypeAsDefaultParameter.class);
    }