|
SandMark version 3.0 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--sandmark.watermark.util.MethodMarker
Subclasses of this class are used to encode integral values in methods.
MethodCFG
Constructor Summary | |
MethodMarker()
|
Method Summary | |
abstract void |
embed(MethodCFG m,
de.fub.bytecode.generic.ClassGen cg,
java.math.BigInteger value)
Attempts to encode the given value in the given method. |
void |
embed(MethodCFG m,
de.fub.bytecode.generic.ClassGen cg,
long value)
Attempts to encode the given value in the given method. |
abstract int |
getCapacity(MethodCFG m)
Returns the number of bits that can be encoded into the given method. |
abstract java.util.Iterator |
recognize(MethodCFG m)
Returns an Iterator over all
values found to be embedded in the
given method. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public MethodMarker()
Method Detail |
public abstract void embed(MethodCFG m, de.fub.bytecode.generic.ClassGen cg, java.math.BigInteger value)
getCapacity()
,
an IllegalArgumentException
will be thrown.
m
- method to encode data incg
- class the method comes fromvalue
- data to encode
java.lang.IllegalArgumentException
- if value has too many bitsgetCapacity(sandmark.util.controlflowgraph.MethodCFG)
public final void embed(MethodCFG m, de.fub.bytecode.generic.ClassGen cg, long value)
getCapacity()
,
an IllegalArgumentException
will be thrown.embed(MethodCFG, ClassGen, BigInteger)
.
m
- method to encode data incg
- class the method comes fromvalue
- data to encode
java.lang.IllegalArgumentException
- if value has too many bitsgetCapacity(sandmark.util.controlflowgraph.MethodCFG)
public abstract java.util.Iterator recognize(MethodCFG m)
Iterator
over all
values found to be embedded in the
given method. Only values embedded using the marking scheme
used by this marker will be reported.
m
- method to search for marks inpublic abstract int getCapacity(MethodCFG m)
m
- method to report the bit capacity ofembed(sandmark.util.controlflowgraph.MethodCFG,
de.fub.bytecode.generic.ClassGen, java.math.BigInteger)
,
embed(sandmark.util.controlflowgraph.MethodCFG,
de.fub.bytecode.generic.ClassGen, long)
|
SandMark version 3.0 Wed Jan 29 10:30:05 MST 2003 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |