p

org.opalj.hermes

queries

package queries

Type Members

  1. class BytecodeInstructions extends FeatureQuery

    Counts the number of occurrences of each bytecode instruction.

  2. class BytecodeInstrumentationAPIUsage extends APIFeatureQuery

    Extracts basic information about the usage of the Java Instrumentation API that has been enhanced in Java 6.

  3. class ClassFileVersion extends FeatureQuery

    Counts the number of class files per class file version.

  4. class ClassLoaderAPIUsage extends APIFeatureQuery

    Extracts calls to the java.lang.ClassLoader API.

  5. class ClassTypes extends FeatureQuery

    Counts which kinds of class types are actually defined.

  6. class DebugInformation extends FeatureQuery

    Classifies class file elements which contain debug information.

    Classifies class file elements which contain debug information.

    Note

    The "SourceDebugExtension" attribute is ignored as it is generally not used.

  7. class FanInFanOut extends FeatureQuery

    This metric computes the Fan-In and Fan-Out of a class.

  8. class FieldAccessStatistics extends DefaultFeatureQuery

    Counts how often fields are accessed.

  9. class GUIAPIUsage extends FeatureQuery

    Scans a class file's constant pool to check whether it refers to packages that belong to an API for graphical user interfaces.

    Scans a class file's constant pool to check whether it refers to packages that belong to an API for graphical user interfaces. The current analysis supports:

    • JavaFX (javafx.)
    • SWT (org.eclipse.swt)
    • Swing (javax.swing)
    • AWT (java.awt)
  10. class JDBCAPIUsage extends APIFeatureQuery

    Counts the amount of calls to certain JDBC api methods

  11. class JavaCryptoArchitectureUsage extends APIFeatureQuery

    Captures the usage of the Java Crypto Architecture.

  12. class MethodTypes extends FeatureQuery

    Counts which types of methods types are found.

  13. class MethodsWithoutReturns extends FeatureQuery

    Counts the number of methods without regular returns.

  14. class Metrics extends FeatureQuery

    Extracts basic metric information (Fields/Methods per Class; Classes per Package; etc.).

  15. class MicroPatterns extends FeatureQuery

    Counts which kinds of micro patterns are actually available.

  16. class RecursiveDataStructures extends FeatureQuery

    Identifies recursive data structures.

    Identifies recursive data structures. Such data-structure can often significantly limit the scalability of analyses.

  17. class ReflectionAPIUsage extends APIFeatureQuery

    Counts the number of certain calls to the Java Reflection API.

  18. class SizeOfInheritanceTree extends FeatureQuery

    Computes the size of the inheritance tree for each class of a project and then assigns the class to its respective category.

    Computes the size of the inheritance tree for each class of a project and then assigns the class to its respective category.

    Here, the size is measured by counting all super types (interfaces and classes!)

  19. class SystemAPIUsage extends APIFeatureQuery

    Counts the calls to specific JVM are system features.

  20. class ThreadAPIUsage extends APIFeatureQuery

    Captures the usage of Thread-related API usage.

  21. class TrivialReflectionUsage extends FeatureQuery

    Counts (non-)trivial usages of "Class.forName(...)".

  22. class UnsafeAPIUsage extends APIFeatureQuery

    Groups features that rely on the Unsafe API.

    Groups features that rely on the Unsafe API. (sun.misc.Unsafe)

    Note

    Feature groups are taken from and are further discussed in the following paper: "Use at Your Own Risk: The Java Unsafe API in the Wild" by Luis Mastrangelo et al.

Ungrouped