JdkJarTypeSolver

io.joern.javasrc2cpg.typesolvers.JdkJarTypeSolver
See theJdkJarTypeSolver companion class

Attributes

Companion
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Value members

Concrete methods

def convertJavaParserNameToStandard(className: String): String

JavaParser replaces the $ in nested class names with a .. This method converts the JavaParser names to the standard format by replacing the . between name parts that start with a capital letter or a digit with a $ since the jdk classes follow the standard practice of capitalising the first letter in class names but not package names.

JavaParser replaces the $ in nested class names with a .. This method converts the JavaParser names to the standard format by replacing the . between name parts that start with a capital letter or a digit with a $ since the jdk classes follow the standard practice of capitalising the first letter in class names but not package names.

Attributes

def fromJdkPath(jdkPath: String, useCache: Boolean): JdkJarTypeSolver
def packagePrefixForJarEntry(entryName: String): String

Convert Jar entry name foo/bar/qux/Baz.class to package prefix foo.bar Only use first 2 parts since this is sufficient to deterimine whether a class has been registered in most cases and, if not, the failure is just a slow lookup.

Convert Jar entry name foo/bar/qux/Baz.class to package prefix foo.bar Only use first 2 parts since this is sufficient to deterimine whether a class has been registered in most cases and, if not, the failure is just a slow lookup.

Attributes

def packagePrefixForJavaParserName(className: String): String

Convert JavaParser class name foo.bar.qux.Baz to package prefix foo.bar Only use first 2 parts since this is sufficient to deterimine whether a class has been registered in most cases and, if not, the failure is just a slow lookup.

Convert JavaParser class name foo.bar.qux.Baz to package prefix foo.bar Only use first 2 parts since this is sufficient to deterimine whether a class has been registered in most cases and, if not, the failure is just a slow lookup.

Attributes

def packagePrefixForJmodEntry(entryName: String): String

Convert jmod entry name classes/foo/bar/qux/Baz.class to package prefix foo.bar Only use first 2 parts since this is sufficient to deterimine whether a class has been registered in most cases and, if not, the failure is just a slow lookup.

Convert jmod entry name classes/foo/bar/qux/Baz.class to package prefix foo.bar Only use first 2 parts since this is sufficient to deterimine whether a class has been registered in most cases and, if not, the failure is just a slow lookup.

Attributes

Concrete fields

val ClassExtension: String
val JarExtension: String
val JmodClassPrefix: String
val JmodExtension: String

Extensions

Extensions

extension (path: String)
def isJarPath: Boolean
def isJmodPath: Boolean