Trait

org.argus.jawa.core

JawaClassLoadManager

Related Doc: package core

Permalink

trait JawaClassLoadManager extends JavaKnowledge with JawaResolver

Self Type
Global
Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. JawaClassLoadManager
  2. JawaResolver
  3. JavaKnowledge
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. object ClassCategory extends Enumeration

    Permalink
    Definition Classes
    JavaKnowledge
  5. def JAVA_PRIMITIVES: Set[String]

    Permalink
    Definition Classes
    JavaKnowledge
  6. def JAVA_TOPLEVEL_OBJECT: String

    Permalink
    Definition Classes
    JavaKnowledge
  7. def JAVA_TOPLEVEL_OBJECT_TYPE: JawaType

    Permalink
    Definition Classes
    JavaKnowledge
  8. def addClassNotFound(typ: JawaType): Unit

    Permalink
    Attributes
    protected[org.argus.jawa.core]
  9. def addClassesNeedUpdateInHierarchy(clazz: JawaClass): Unit

    Permalink
    Attributes
    protected[org.argus.jawa.core]
  10. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  11. def assign(str: String, dimension: Int, pattern: String, front: Boolean): String

    Permalink

    input ("Ljava/lang/String;", 1, "[", true) output "[Ljava/lang/String;"

    input ("Ljava/lang/String;", 1, "[", true) output "[Ljava/lang/String;"

    Attributes
    protected
    Definition Classes
    JavaKnowledge
  12. val classCache: Cache[JawaType, JawaClass]

    Permalink
    Attributes
    protected
  13. def clearClassesNeedUpdateInHierarchy(): Unit

    Permalink
    Attributes
    protected[org.argus.jawa.core]
  14. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  15. def constructorName: String

    Permalink

    ******************** JawaMethod related op end *************************

    ******************** JawaMethod related op end *************************

    Definition Classes
    JavaKnowledge
  16. def containsClass(typ: JawaType): Boolean

    Permalink

    current Global contains the given class or not

  17. def containsField(fieldFQN: FieldFQN): Boolean

    Permalink

    return true if contains the given field.

    return true if contains the given field. Input example is java.lang.Throwable.stackState

  18. def containsMethod(signature: Signature): Boolean

    Permalink

    return true if contains the given procedure.

    return true if contains the given procedure. Input example is Ljava/lang/Object;.equals:(Ljava/lang/Object;)Z

  19. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  20. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  21. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  22. def findEntryPoints(entryMethodName: String): ISet[JawaMethod]

    Permalink

    find entry points from current app/test cases

  23. def formatPackageStringToPackage(pkg: String): JawaPackage

    Permalink
    Definition Classes
    JavaKnowledge
  24. def formatSignatureToType(sig: String): JawaType

    Permalink

    convert type string from signature style to type.

    convert type string from signature style to type. [Ljava/lang/Object; -> (java.lang.Object, 1)

    Definition Classes
    JavaKnowledge
  25. def formatTypeToName(typ: JawaType): String

    Permalink
    Definition Classes
    JavaKnowledge
  26. def formatTypeToSignature(typ: JawaType): String

    Permalink
    Definition Classes
    JavaKnowledge
  27. def genSignature(classTyp: JawaType, methodName: String, paramTyps: IList[JawaType], retTyp: JawaType): Signature

    Permalink
    Definition Classes
    JavaKnowledge
  28. def genSignature(classSigPart: String, methodNamePart: String, paramSigPart: String): Signature

    Permalink
    Definition Classes
    JavaKnowledge
  29. def generateFieldFQN(owner: JawaType, name: String, typ: JawaType): FieldFQN

    Permalink

    generate signature of this field.

    generate signature of this field. input: ("java.lang.Throwable", "stackState") output: "java.lang.Throwable.stackState"

    Definition Classes
    JavaKnowledge
  30. def generateSignature(method: JawaMethod): Signature

    Permalink

    generate signature of this method

    generate signature of this method

    Definition Classes
    JavaKnowledge
  31. def generateSignatureFromOwnerAndMethodSubSignature(clazz: JawaClass, subSig: String): Signature

    Permalink
    Definition Classes
    JavaKnowledge
  32. def generateUnknownJawaMethod(declaringClass: JawaClass, signature: Signature): JawaMethod

    Permalink
    Definition Classes
    JavaKnowledge
  33. def getApplicationClasses: ISet[JawaClass]

    Permalink

    get all the application classes

  34. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  35. def getClassCode(file: AbstractFile, level: ResolveLevel.Value): String

    Permalink
    Attributes
    protected[org.argus.jawa]
    Definition Classes
    JawaResolver
  36. def getClassHierarchy: ClassHierarchy

    Permalink

    retrieve the class hierarchy

  37. def getClassNameFromFieldFQN(fqn: String): String

    Permalink

    get class name from field signature.

    get class name from field signature. e.g. java.lang.Throwable.stackState -> java.lang.Throwable [Ljava.lang.String;.length -> [Ljava.lang.String;

    Definition Classes
    JavaKnowledge
  38. def getClassNameFromMethodFullName(mfn: String): String

    Permalink
    Definition Classes
    JavaKnowledge
  39. def getClassNotFound: ISet[JawaType]

    Permalink
    Attributes
    protected[org.argus.jawa.core]
  40. def getClassOrResolve(typ: JawaType): JawaClass

    Permalink

    get class by type, if not present resolve it.

  41. def getClassTypeFromFieldFQN(fqn: String): JawaType

    Permalink

    get class name from field signature.

    get class name from field signature. e.g. java.lang.Throwable.stackState -> java.lang.Throwable [Ljava.lang.String;.length -> [Ljava.lang.String;

    Definition Classes
    JavaKnowledge
  42. def getClassTypeFromMethodFullName(mfn: String): JawaType

    Permalink
    Definition Classes
    JavaKnowledge
  43. def getClassesNeedUpdateInHierarchy: ISet[JawaClass]

    Permalink
    Attributes
    protected[org.argus.jawa.core]
  44. def getClazz(typ: JawaType): Option[JawaClass]

    Permalink

    get class by type; if it does not exist, return None

  45. def getEntryPoints(entryMethodName: String): ISet[JawaMethod]

    Permalink

    get entry points

  46. def getField(fieldFQN: FieldFQN): Option[JawaField]

    Permalink

    grab field from Global.

    grab field from Global. Input example is java.lang.Throwable.stackState

  47. def getFieldNameFromFieldFQN(fqn: String): String

    Permalink

    get field name from field FQN.

    get field name from field FQN. e.g. java.lang.Throwable.stackState -> stackState

    Definition Classes
    JavaKnowledge
  48. def getMethod(signature: Signature): Option[JawaMethod]

    Permalink

    get procedure from Global.

    get procedure from Global. Input example is Ljava/lang/Object;.equals:(Ljava/lang/Object;)Z

  49. def getMethodNameFromMethodFullName(mfn: String): String

    Permalink
    Definition Classes
    JavaKnowledge
  50. def getMethodOrResolve(signature: Signature): Option[JawaMethod]

    Permalink
  51. def getOuterTypeFrom(innerType: JawaType): JawaType

    Permalink

    get outer class name from inner class name.

    get outer class name from inner class name. e.g. android.os.Handler$Callback -> android.os.Handler

    Definition Classes
    JavaKnowledge
  52. def getType(typ: String, dimentions: Int): JawaType

    Permalink

    input ("java.lang.String", 1) output Type

    input ("java.lang.String", 1) output Type

    Attributes
    protected
    Definition Classes
    JavaKnowledge
  53. def getTypeFromJawaName(name: String): JawaType

    Permalink

    input: "java.lang.String[]" output: JawaType("java.lang.String", 1)

    input: "java.lang.String[]" output: JawaType("java.lang.String", 1)

    Definition Classes
    JavaKnowledge
  54. def getTypeFromName(name: String): JawaType

    Permalink

    input: "[Ljava.lang.String;" output: JawaType("java.lang.String", 1)

    input: "[Ljava.lang.String;" output: JawaType("java.lang.String", 1)

    Definition Classes
    JavaKnowledge
  55. def getUserLibraryClasses: ISet[JawaClass]

    Permalink

    get all the third party lib classes

  56. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  57. val hierarchy: ClassHierarchy

    Permalink

    class hierarchy of all classes in the current Global

    class hierarchy of all classes in the current Global

    Attributes
    protected
  58. def isApplicationClasses(typ: JawaType): Boolean

    Permalink

    get all the application classes

  59. def isFQN(str: String): Boolean

    Permalink

    check if given string is field signature or not

    check if given string is field signature or not

    Definition Classes
    JavaKnowledge
  60. def isInnerClass(typ: JawaType): Boolean

    Permalink

    return true if the given typ is a inner class or not

    return true if the given typ is a inner class or not

    Definition Classes
    JavaKnowledge
  61. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  62. def isJavaPrimitive(name: String): Boolean

    Permalink

    return whether given type is java primitive type

    return whether given type is java primitive type

    Definition Classes
    JavaKnowledge
  63. def isJavaPrimitive(typ: JawaType): Boolean

    Permalink

    return whether given type is java primitive type

    return whether given type is java primitive type

    Definition Classes
    JavaKnowledge
  64. def isJawaConstructor(name: String): Boolean

    Permalink
    Definition Classes
    JavaKnowledge
  65. def isSystemLibraryClasses(typ: JawaType): Boolean

    Permalink

    get all the system library classes

  66. def isUserLibraryClasses(typ: JawaType): Boolean

    Permalink

    get all the third party lib classes

  67. def isValidFieldFQN(fqn: String): Boolean

    Permalink

    FQN of the field.

    FQN of the field. e.g. java.lang.Throwable.stackState or @@java.lang.Enum.sharedConstantsCache

    Definition Classes
    JavaKnowledge
  68. def isValidFieldName(name: String): Boolean

    Permalink

    FQN of the field.

    FQN of the field. e.g. java.lang.Throwable.stackState or @@java.lang.Enum.sharedConstantsCache

    Definition Classes
    JavaKnowledge
  69. def isValidMethodFullName(mfn: String): Boolean

    Permalink

    e.g.

    e.g. java.lang.Throwable.run

    Definition Classes
    JavaKnowledge
  70. val methodCache: Cache[Signature, JawaMethod]

    Permalink
    Attributes
    protected
  71. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  72. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  73. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  74. def printDetails(): Unit

    Permalink
  75. def removeClass(typ: JawaType): Unit

    Permalink

    remove class from Global Todo: Update hierarchy accordingly.

  76. def resetClassHierarchy(): Unit

    Permalink

    reset class hierarchy

  77. def resolveAllClasses(codes: MMap[JawaType, SourceFile]): ISet[JawaClass]

    Permalink

    Resolve all application classes to Hierarchy level.

    Resolve all application classes to Hierarchy level. Be careful, it will take some time.

    Attributes
    protected[org.argus.jawa.core]
  78. def resolveClass(classType: JawaType, desiredLevel: ResolveLevel.Value, allowUnknown: Boolean): JawaClass

    Permalink

    resolve the given classes to desired level.

    resolve the given classes to desired level.

    Attributes
    protected[org.argus.jawa.core]
    Definition Classes
    JawaResolver
  79. def resolveClassRelation(clazz: JawaClass): Any

    Permalink

    resolve classes relation of the whole program

    resolve classes relation of the whole program

    Attributes
    protected[org.argus.jawa.core]
    Definition Classes
    JawaResolver
  80. def resolveFromMyClass(mc: MyClass): JawaClass

    Permalink
    Attributes
    protected
    Definition Classes
    JawaResolver
  81. def resolveFromMyMethod(clazz: JawaClass, m: MyMethod): JawaMethod

    Permalink
    Attributes
    protected
    Definition Classes
    JawaResolver
  82. def resolveMethodBody(c: JawaClass): Unit

    Permalink

    resolve the given method's body to body level.

    resolve the given method's body to body level.

    Definition Classes
    JawaResolver
  83. def resolveMethodCode(sig: Signature, code: String): JawaMethod

    Permalink

    resolve the given method code.

    resolve the given method code. Normally only for dummyMain i.e. environment method

    Definition Classes
    JawaResolver
  84. def resolveToBody(classType: JawaType): JawaClass

    Permalink

    resolve the given class to body level.

    resolve the given class to body level. Unknown class cannot resolve to body level. It will throw JawaResolverError if violate.

    Definition Classes
    JawaResolver
    Annotations
    @throws( classOf[JawaResolverError] )
  85. def resolveToHierarchy(classType: JawaType, allowUnknown: Boolean = true): JawaClass

    Permalink

    resolve the given class to hierarchy level

    resolve the given class to hierarchy level

    Definition Classes
    JawaResolver
    Annotations
    @throws( classOf[JawaResolverError] )
  86. def separatePkgAndTyp(pkgAndTyp: String): JawaBaseType

    Permalink

    input: "java.lang.String" output: (Some("java.lang"), "String") input: "int" output: (None, "int")

    input: "java.lang.String" output: (Some("java.lang"), "String") input: "int" output: (None, "int")

    Definition Classes
    JavaKnowledge
  87. def staticInitializerName: String

    Permalink
    Definition Classes
    JavaKnowledge
  88. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  89. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  90. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  91. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  92. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from JawaResolver

Inherited from JavaKnowledge

Inherited from AnyRef

Inherited from Any

Ungrouped