Package io.determann.shadow.impl.shadow
Class ModuleImpl
- All Implemented Interfaces:
Annotationable<ModuleElement>,ApiHolder,DeclaredHolder,ElementBacked<ModuleElement>,MirrorBacked<NoType>,Modifiable,QualifiedNameable<ModuleElement>,Module,Shadow<NoType>
-
Constructor Summary
ConstructorsConstructorDescriptionModuleImpl(ShadowApi shadowApi, ModuleElement moduleElement) ModuleImpl(ShadowApi shadowApi, NoType noType) -
Method Summary
Modifier and TypeMethodDescriptionvoidconsumeDirectives(DirectiveConsumer consumer) booleanbe careful using this equalsgetDeclared(String qualifiedName) Relations between modulesinthashCode()booleanbooleanisOpen()can everybody use reflection on this module?boolean<T> List<T>mapDirectives(DirectiveMapper<T> mapper) booleanrepresentsSameType(Shadow<? extends TypeMirror> shadow) type equals from the compiler perspective. for example ?toString()Methods inherited from class io.determann.shadow.impl.shadow.ShadowImpl
getApi, getMirror, isTypeKindMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface io.determann.shadow.api.Annotationable
getAnnotationUsages, getDirectAnnotationUsages, getDirectUsageOf, getDirectUsageOfOrThrow, getDirectUsagesOf, getUsageOf, getUsageOfOrThrow, getUsagesOf, isAnnotatedWith, isDirectlyAnnotatedWithMethods inherited from interface io.determann.shadow.api.DeclaredHolder
getAnnotation, getAnnotationOrThrow, getAnnotations, getClass, getClasses, getClassOrThrow, getDeclaredOrThrow, getEnum, getEnumOrThrow, getEnums, getInterface, getInterfaceOrThrow, getInterfaces, getRecord, getRecordOrThrow, getRecordsMethods inherited from interface io.determann.shadow.api.ElementBacked
getJavaDoc, getModifiers, getModule, getSimpleName, logError, logInfo, logWarningMethods inherited from interface io.determann.shadow.api.modifier.Modifiable
hasModifierMethods inherited from interface io.determann.shadow.api.QualifiedNameable
getQualifiedNameMethods inherited from interface io.determann.shadow.api.shadow.Shadow
getApi, getMirror, isTypeKind
-
Constructor Details
-
ModuleImpl
-
ModuleImpl
-
-
Method Details
-
getTypeKind
- Specified by:
getTypeKindin interfaceShadow<NoType>
-
getElement
- Specified by:
getElementin interfaceElementBacked<ModuleElement>
-
getPackages
- Specified by:
getPackagesin interfaceModule
-
getDeclared
- Specified by:
getDeclaredin interfaceDeclaredHolder
-
getDeclared
- Specified by:
getDeclaredin interfaceDeclaredHolder
-
isOpen
public boolean isOpen()Description copied from interface:Modulecan everybody use reflection on this module? -
isUnnamed
public boolean isUnnamed() -
isAutomatic
public boolean isAutomatic()- Specified by:
isAutomaticin interfaceModule
-
getDirectives
Description copied from interface:ModuleRelations between modulesDifferent behavior for
Provides! The jdk api returns redundant entries forProvideswith multipleProvides.getImplementations()forjava.desktopfor example:
this method will only return the complete entryprovides javax.sound.midi.spi.MidiDeviceProvider with com.sun.media.sound.MidiInDeviceProvider; provides javax.sound.midi.spi.MidiDeviceProvider with com.sun.media.sound.MidiInDeviceProvider, com.sun.media.sound.MidiOutDeviceProvider; provides javax.sound.midi.spi.MidiDeviceProvider with com.sun.media.sound.MidiInDeviceProvider, com.sun.media.sound.MidiOutDeviceProvider, com.sun.media.sound.RealTimeSequencerProvider; provides javax.sound.midi.spi.MidiDeviceProvider with com.sun.media.sound.MidiInDeviceProvider, com.sun.media.sound.MidiOutDeviceProvider, com.sun.media.sound.RealTimeSequencerProvider, com.sun.media.sound.SoftProvider;provides javax.sound.midi.spi.MidiDeviceProvider with com.sun.media.sound.MidiInDeviceProvider, com.sun.media.sound.MidiOutDeviceProvider, com.sun.media.sound.RealTimeSequencerProvider, com.sun.media.sound.SoftProvider;- Specified by:
getDirectivesin interfaceModule
-
mapDirectives
- Specified by:
mapDirectivesin interfaceModule
-
consumeDirectives
- Specified by:
consumeDirectivesin interfaceModule
-
representsSameType
Description copied from interface:Shadowtype equals from the compiler perspective. for example ? does not equal ? for the compiler. use this method to compareShadows when ever possible.Shadow.equals(Object)should only be used to compare the technical aspect of two objects. for example in a list implementation.- Specified by:
representsSameTypein interfaceShadow<NoType>- Overrides:
representsSameTypein classShadowImpl<NoType>
-
toString
- Overrides:
toStringin classShadowImpl<NoType>
-
hashCode
public int hashCode() -
equals
Description copied from interface:Modulebe careful using this equals
-