Package it.unive.lisa

Class LiSAFactory.ConfigurableComponent

  • Enclosing class:
    LiSAFactory

    public static final class LiSAFactory.ConfigurableComponent
    extends java.lang.Object
    An analysis component that can be configured, that is, it has more than one implementation that can be modularly integrated into the analysis. getComponent() yields the component itself, i.e. the interface or abstract class that defines the analysis component. getAlternatives() yields all the concrete implementations of the component.

    Note that all information present in instances of this class reflect the information known to LiSA when this component is created, that is, what is present inside the classpath and already loaded by the JVM.
    • Method Detail

      • getComponent

        public java.lang.Class<?> getComponent()
        Yields the component represented by this LiSAFactory.ConfigurableComponent.
        Returns:
        the analysis component
      • getAlternatives

        public java.util.Set<java.lang.Class<?>> getAlternatives()
        Yields the alternatives for this component, that is, the concrete classes that implements it. Each alternative is mapped to its default parameters, if any.
        Returns:
        the alternatives for this component
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object