|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object soot.jimple.toolkits.invoke.AccessManager
public class AccessManager
Methods for checking Java scope and visibiliity requirements.
Constructor Summary | |
---|---|
AccessManager()
|
Method Summary | |
---|---|
static void |
createAccessorMethod(SootMethod container,
Stmt stmt)
Turns a field access or method call into a call to an accessor method. |
static void |
createAccessorMethods(Body body,
Stmt before,
Stmt after)
Resolves illegal accesses in the interval ]before,after[ by creating accessor methods. |
static String |
createAccessorName(ClassMember member,
boolean setter)
Creates a name for an accessor method. |
static boolean |
ensureAccess(SootMethod container,
ClassMember target,
String options)
Modifies code so that an access to target is legal from
code in container . |
static boolean |
ensureAccess(SootMethod container,
SootClass target,
String options)
Modifies code so that an access to target is legal from code in container . |
static boolean |
isAccessLegal(SootMethod container,
ClassMember target)
Returns true iff target is legally accessible from container. |
static boolean |
isAccessLegal(SootMethod container,
SootClass target)
Returns true if an access to target is legal from code in container . |
static boolean |
isAccessLegal(SootMethod container,
Stmt stmt)
Returns true if the statement stmt contains an illegal access to a field or method,
assuming the statement is in method container |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public AccessManager()
Method Detail |
---|
public static boolean isAccessLegal(SootMethod container, ClassMember target)
public static boolean isAccessLegal(SootMethod container, SootClass target)
target
is legal from code in container
.
public static boolean isAccessLegal(SootMethod container, Stmt stmt)
stmt
contains an illegal access to a field or method,
assuming the statement is in method container
container
- stmt
-
public static void createAccessorMethods(Body body, Stmt before, Stmt after)
before
and after
can be null to indicate beginning/end respectively.
body
- before
- after
- public static String createAccessorName(ClassMember member, boolean setter)
member
- setter
-
public static void createAccessorMethod(SootMethod container, Stmt stmt)
container
- stmt
- public static boolean ensureAccess(SootMethod container, ClassMember target, String options)
target
is legal from
code in container
.
The "accessors" option assumes suitable accessor methods will be created after checking.
public static boolean ensureAccess(SootMethod container, SootClass target, String options)
target
is legal from code in container
.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |