Interface ITypeResolver

    • Method Detail

      • newTypeResolver

        @NonNull
        static ITypeResolver newTypeResolver​(@NonNull
                                             IBindingConfiguration bindingConfiguration)
        Construct a new type resolver using the default implementation.
        Parameters:
        bindingConfiguration - the binding configuration used to configure types
        Returns:
        the type resolver
      • getTypeInfo

        @NonNull
        IModelDefinitionTypeInfo getTypeInfo​(@NonNull
                                             IFlagContainer definition)
        Get type information for the provided definition.
        Parameters:
        definition - the definition to get type information for
        Returns:
        the type information
      • getClassName

        @NonNull
        com.squareup.javapoet.ClassName getClassName​(@NonNull
                                                     IModule module)
        Get the name of the class associated with the provided Module module.
        Parameters:
        module - the Module module that will be built as a class
        Returns:
        the class name information for the Module module
      • getClassName

        @NonNull
        com.squareup.javapoet.ClassName getClassName​(@NonNull
                                                     IFlagContainer definition)
        Get the name of the class associated with the provided definition.
        Parameters:
        definition - a definition that may be built as a subclass
        Returns:
        the class name information for the definition
      • getBaseClassName

        @Nullable
        com.squareup.javapoet.ClassName getBaseClassName​(@NonNull
                                                         IFlagContainer definition)
        Get the name of the base class to use for the class associated with the provided definition.
        Parameters:
        definition - a definition that may be built as a class
        Returns:
        the name of the base class or null if no base class is to be used
      • getPackageName

        @NonNull
        String getPackageName​(@NonNull
                              IModule module)
        Get the Java package name to use for the provided Module module.
        Parameters:
        module - the Module module
        Returns:
        the Java package name