Class

org.argus.jawa.core

Global

Related Doc: package core

Permalink

class Global extends JawaClassLoadManager with JawaClasspathManager

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Global
  2. JawaClasspathManager
  3. JawaClassLoadManager
  4. JawaResolver
  5. JavaKnowledge
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Global(projectName: String, reporter: Reporter)

    Permalink

Type Members

  1. class GlobalPlatform extends JavaPlatform

    Permalink
    Attributes
    protected
    Definition Classes
    JawaClasspathManager

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]
    Definition Classes
    JawaClassLoadManager
  9. def addClassesNeedUpdateInHierarchy(clazz: JawaClass): Unit

    Permalink
    Attributes
    protected[org.argus.jawa.core]
    Definition Classes
    JawaClassLoadManager
  10. val applicationClassCodes: MMap[JawaType, SourceFile]

    Permalink

    map from class name to jawa code of app.

    map from class name to jawa code of app. E.g. record name java.lang.MyObject to its file

    Attributes
    protected
    Definition Classes
    JawaClasspathManager
  11. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  12. 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
  13. val cachedClassRepresentation: LoadingCache[JawaType, Option[ClassRepresentation]]

    Permalink
    Attributes
    protected
    Definition Classes
    JawaClasspathManager
  14. val classCache: Cache[JawaType, JawaClass]

    Permalink
    Attributes
    protected
    Definition Classes
    JawaClassLoadManager
  15. def classPath: ClassFileLookup

    Permalink
    Definition Classes
    JawaClasspathManager
  16. def classpathImpl: ClasspathRepresentationType.Value

    Permalink
    Definition Classes
    JawaClasspathManager
  17. def clearClassesNeedUpdateInHierarchy(): Unit

    Permalink
    Attributes
    protected[org.argus.jawa.core]
    Definition Classes
    JawaClassLoadManager
  18. def clone(): AnyRef

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

    Permalink

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

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

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

    Permalink

    current Global contains the given class or not

    current Global contains the given class or not

    Definition Classes
    JawaClassLoadManager
  21. def containsClassFile(typ: JawaType): Boolean

    Permalink
    Definition Classes
    JawaClasspathManager
  22. 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

    Definition Classes
    JawaClassLoadManager
  23. 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

    Definition Classes
    JawaClassLoadManager
  24. final def eq(arg0: AnyRef): Boolean

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

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

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

    Permalink

    find entry points from current app/test cases

    find entry points from current app/test cases

    Definition Classes
    JawaClassLoadManager
  28. def formatPackageStringToPackage(pkg: String): JawaPackage

    Permalink
    Definition Classes
    JavaKnowledge
  29. 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
  30. def formatTypeToName(typ: JawaType): String

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

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

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

    Permalink
    Definition Classes
    JavaKnowledge
  34. 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
  35. def generateSignature(method: JawaMethod): Signature

    Permalink

    generate signature of this method

    generate signature of this method

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

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

    Permalink
    Definition Classes
    JavaKnowledge
  38. def getApplicationClassCodes: IMap[JawaType, SourceFile]

    Permalink
    Definition Classes
    JawaClasspathManager
  39. def getApplicationClasses: ISet[JawaClass]

    Permalink

    get all the application classes

    get all the application classes

    Definition Classes
    JawaClassLoadManager
  40. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  41. def getClassCategoryFromClassPath(typ: JawaType): JavaKnowledge.ClassCategory.Value

    Permalink
    Definition Classes
    JawaClasspathManager
  42. def getClassCode(file: AbstractFile, level: ResolveLevel.Value): String

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

    Permalink

    retrieve the class hierarchy

    retrieve the class hierarchy

    Definition Classes
    JawaClassLoadManager
  44. 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
  45. def getClassNameFromMethodFullName(mfn: String): String

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

    Permalink
    Attributes
    protected[org.argus.jawa.core]
    Definition Classes
    JawaClassLoadManager
  47. def getClassOrResolve(typ: JawaType): JawaClass

    Permalink

    get class by type, if not present resolve it.

    get class by type, if not present resolve it.

    Definition Classes
    JawaClassLoadManager
  48. def getClassRepresentation(typ: JawaType): Option[ClassRepresentation]

    Permalink
    Definition Classes
    JawaClasspathManager
  49. 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
  50. def getClassTypeFromMethodFullName(mfn: String): JawaType

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

    Permalink
    Attributes
    protected[org.argus.jawa.core]
    Definition Classes
    JawaClassLoadManager
  52. def getClazz(typ: JawaType): Option[JawaClass]

    Permalink

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

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

    Definition Classes
    JawaClassLoadManager
  53. def getEntryPoints(entryMethodName: String): ISet[JawaMethod]

    Permalink

    get entry points

    get entry points

    Definition Classes
    JawaClassLoadManager
  54. def getField(fieldFQN: FieldFQN): Option[JawaField]

    Permalink

    grab field from Global.

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

    Definition Classes
    JawaClassLoadManager
  55. 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
  56. 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

    Definition Classes
    JawaClassLoadManager
  57. def getMethodCode(sig: Signature): Option[String]

    Permalink

    get procedure's containing record's code

    get procedure's containing record's code

    Definition Classes
    JawaClasspathManager
  58. def getMethodNameFromMethodFullName(mfn: String): String

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

    Permalink
    Definition Classes
    JawaClassLoadManager
  60. def getMyClass(typ: JawaType): Option[MyClass]

    Permalink
    Definition Classes
    JawaClasspathManager
  61. 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
  62. 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
  63. 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
  64. 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
  65. def getUserLibraryClassCodes: IMap[JawaType, SourceFile]

    Permalink
    Definition Classes
    JawaClasspathManager
  66. def getUserLibraryClasses: ISet[JawaClass]

    Permalink

    get all the third party lib classes

    get all the third party lib classes

    Definition Classes
    JawaClassLoadManager
  67. def hashCode(): Int

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

    Permalink

    class hierarchy of all classes in the current Global

    class hierarchy of all classes in the current Global

    Attributes
    protected
    Definition Classes
    JawaClassLoadManager
  69. def isApplicationClasses(typ: JawaType): Boolean

    Permalink

    get all the application classes

    get all the application classes

    Definition Classes
    JawaClassLoadManager
  70. 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
  71. 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
  72. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  73. 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
  74. 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
  75. def isJawaConstructor(name: String): Boolean

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

    Permalink

    get all the system library classes

    get all the system library classes

    Definition Classes
    JawaClassLoadManager
  77. def isUserLibraryClasses(typ: JawaType): Boolean

    Permalink

    get all the third party lib classes

    get all the third party lib classes

    Definition Classes
    JawaClassLoadManager
  78. 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
  79. 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
  80. def isValidMethodFullName(mfn: String): Boolean

    Permalink

    e.g.

    e.g. java.lang.Throwable.run

    Definition Classes
    JavaKnowledge
  81. def load(fileRootUri: FileResourceUri, ext: String, summary: LibraryAPISummary): Unit

    Permalink

    load code from given root dir

    load code from given root dir

    Definition Classes
    JawaClasspathManager
  82. val methodCache: Cache[Signature, JawaMethod]

    Permalink
    Attributes
    protected
    Definition Classes
    JawaClassLoadManager
  83. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  86. lazy val platform: GlobalPlatform

    Permalink
    Definition Classes
    JawaClasspathManager
  87. def printDetails(): Unit

    Permalink
    Definition Classes
    JawaClassLoadManager
  88. val projectName: String

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

    Permalink

    remove class from Global Todo: Update hierarchy accordingly.

    remove class from Global Todo: Update hierarchy accordingly.

    Definition Classes
    JawaClassLoadManager
  90. val reporter: Reporter

    Permalink
  91. def reset(removeCode: Boolean = true): Unit

    Permalink

    reset the current Global

  92. def resetClassHierarchy(): Unit

    Permalink

    reset class hierarchy

    reset class hierarchy

    Definition Classes
    JawaClassLoadManager
  93. 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]
    Definition Classes
    JawaClassLoadManager
  94. 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
  95. 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
  96. def resolveFromMyClass(mc: MyClass): JawaClass

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

    Permalink
    Attributes
    protected
    Definition Classes
    JawaResolver
  98. 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
  99. 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
  100. 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] )
  101. 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] )
  102. 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
  103. def setJavaLib(path: String): Unit

    Permalink
    Definition Classes
    JawaClasspathManager
  104. def staticInitializerName: String

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  107. val userLibraryClassCodes: MMap[JawaType, SourceFile]

    Permalink

    map from class name to jawa code of library.

    map from class name to jawa code of library. E.g. class type java.lang.Object to its file

    Attributes
    protected
    Definition Classes
    JawaClasspathManager
  108. final def wait(): Unit

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

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

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

Inherited from JawaClasspathManager

Inherited from JawaClassLoadManager

Inherited from JawaResolver

Inherited from JavaKnowledge

Inherited from AnyRef

Inherited from Any

Ungrouped